{
  "nbformat": 4,
  "nbformat_minor": 0,
  "metadata": {
    "colab": {
      "name": "时间序列数据建模.ipynb",
      "provenance": [],
      "toc_visible": true
    },
    "kernelspec": {
      "name": "python3",
      "display_name": "Python 3"
    }
  },
  "cells": [
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "oMzWoepxw7NE"
      },
      "source": [
        "# 时间序列建模\n",
        "\n",
        "本篇文章将利用 TensorFlow 2.0 建立时间序列RNN模型，对国内的新冠肺炎疫情结束时间进行预测。"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "o3jI-T0Mwwx2",
        "outputId": "d68fd2d7-d628-48cd-d29c-55ea4489de58",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 204
        }
      },
      "source": [
        "# 下载数据\n",
        "!wget https://raw.githubusercontent.com/lyhue1991/eat_tensorflow2_in_30_days/master/data/covid-19.csv"
      ],
      "execution_count": 1,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "--2020-10-06 07:15:23--  https://raw.githubusercontent.com/lyhue1991/eat_tensorflow2_in_30_days/master/data/covid-19.csv\n",
            "Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 151.101.0.133, 151.101.64.133, 151.101.128.133, ...\n",
            "Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|151.101.0.133|:443... connected.\n",
            "HTTP request sent, awaiting response... 200 OK\n",
            "Length: 1563 (1.5K) [text/plain]\n",
            "Saving to: ‘covid-19.csv’\n",
            "\n",
            "covid-19.csv        100%[===================>]   1.53K  --.-KB/s    in 0s      \n",
            "\n",
            "2020-10-06 07:15:23 (30.1 MB/s) - ‘covid-19.csv’ saved [1563/1563]\n",
            "\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "uMq_FVX5w-SU"
      },
      "source": [
        "import numpy as np\n",
        "import pandas as pd \n",
        "import matplotlib.pyplot as plt\n",
        "import tensorflow as tf \n",
        "from tensorflow.keras import models,layers,losses,metrics,callbacks "
      ],
      "execution_count": 2,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "Q_orFutcFbxJ",
        "outputId": "bfd1680c-7d9c-46c9-aaae-a29c0b81eaf9",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 610
        }
      },
      "source": [
        "%matplotlib inline\n",
        "%config InlineBackend.figure_format = 'svg'\n",
        "\n",
        "df = pd.read_csv(\"./covid-19.csv\",sep = \"\\t\")\n",
        "df.plot(x = \"date\",y = [\"confirmed_num\",\"cured_num\",\"dead_num\"],figsize=(10,6))\n",
        "plt.xticks(rotation=60)"
      ],
      "execution_count": 4,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "(array([-10.,   0.,  10.,  20.,  30.,  40.,  50.]),\n",
              " <a list of 7 Text major ticklabel objects>)"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 4
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 720x432 with 1 Axes>"
            ],
            "image/svg+xml": "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n<!-- Created with matplotlib (https://matplotlib.org/) -->\n<svg height=\"416.406795pt\" version=\"1.1\" viewBox=\"0 0 611.2125 416.406795\" width=\"611.2125pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <defs>\n  <style type=\"text/css\">\n*{stroke-linecap:butt;stroke-linejoin:round;}\n  </style>\n </defs>\n <g id=\"figure_1\">\n  <g id=\"patch_1\">\n   <path d=\"M 0 416.406795 \nL 611.2125 416.406795 \nL 611.2125 0 \nL 0 0 \nz\n\" style=\"fill:none;\"/>\n  </g>\n  <g id=\"axes_1\">\n   <g id=\"patch_2\">\n    <path d=\"M 46.0125 333.36 \nL 604.0125 333.36 \nL 604.0125 7.2 \nL 46.0125 7.2 \nz\n\" style=\"fill:#ffffff;\"/>\n   </g>\n   <g id=\"matplotlib.axis_1\">\n    <g id=\"xtick_1\">\n     <g id=\"line2d_1\">\n      <defs>\n       <path d=\"M 0 0 \nL 0 3.5 \n\" id=\"mc526054e33\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n      </defs>\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"71.376136\" xlink:href=\"#mc526054e33\" y=\"333.36\"/>\n      </g>\n     </g>\n     <g id=\"text_1\">\n      <!-- 2020-01-24 -->\n      <defs>\n       <path d=\"M 19.1875 8.296875 \nL 53.609375 8.296875 \nL 53.609375 0 \nL 7.328125 0 \nL 7.328125 8.296875 \nQ 12.9375 14.109375 22.625 23.890625 \nQ 32.328125 33.6875 34.8125 36.53125 \nQ 39.546875 41.84375 41.421875 45.53125 \nQ 43.3125 49.21875 43.3125 52.78125 \nQ 43.3125 58.59375 39.234375 62.25 \nQ 35.15625 65.921875 28.609375 65.921875 \nQ 23.96875 65.921875 18.8125 64.3125 \nQ 13.671875 62.703125 7.8125 59.421875 \nL 7.8125 69.390625 \nQ 13.765625 71.78125 18.9375 73 \nQ 24.125 74.21875 28.421875 74.21875 \nQ 39.75 74.21875 46.484375 68.546875 \nQ 53.21875 62.890625 53.21875 53.421875 \nQ 53.21875 48.921875 51.53125 44.890625 \nQ 49.859375 40.875 45.40625 35.40625 \nQ 44.1875 33.984375 37.640625 27.21875 \nQ 31.109375 20.453125 19.1875 8.296875 \nz\n\" id=\"DejaVuSans-50\"/>\n       <path d=\"M 31.78125 66.40625 \nQ 24.171875 66.40625 20.328125 58.90625 \nQ 16.5 51.421875 16.5 36.375 \nQ 16.5 21.390625 20.328125 13.890625 \nQ 24.171875 6.390625 31.78125 6.390625 \nQ 39.453125 6.390625 43.28125 13.890625 \nQ 47.125 21.390625 47.125 36.375 \nQ 47.125 51.421875 43.28125 58.90625 \nQ 39.453125 66.40625 31.78125 66.40625 \nz\nM 31.78125 74.21875 \nQ 44.046875 74.21875 50.515625 64.515625 \nQ 56.984375 54.828125 56.984375 36.375 \nQ 56.984375 17.96875 50.515625 8.265625 \nQ 44.046875 -1.421875 31.78125 -1.421875 \nQ 19.53125 -1.421875 13.0625 8.265625 \nQ 6.59375 17.96875 6.59375 36.375 \nQ 6.59375 54.828125 13.0625 64.515625 \nQ 19.53125 74.21875 31.78125 74.21875 \nz\n\" id=\"DejaVuSans-48\"/>\n       <path d=\"M 4.890625 31.390625 \nL 31.203125 31.390625 \nL 31.203125 23.390625 \nL 4.890625 23.390625 \nz\n\" id=\"DejaVuSans-45\"/>\n       <path d=\"M 12.40625 8.296875 \nL 28.515625 8.296875 \nL 28.515625 63.921875 \nL 10.984375 60.40625 \nL 10.984375 69.390625 \nL 28.421875 72.90625 \nL 38.28125 72.90625 \nL 38.28125 8.296875 \nL 54.390625 8.296875 \nL 54.390625 0 \nL 12.40625 0 \nz\n\" id=\"DejaVuSans-49\"/>\n       <path d=\"M 37.796875 64.3125 \nL 12.890625 25.390625 \nL 37.796875 25.390625 \nz\nM 35.203125 72.90625 \nL 47.609375 72.90625 \nL 47.609375 25.390625 \nL 58.015625 25.390625 \nL 58.015625 17.1875 \nL 47.609375 17.1875 \nL 47.609375 0 \nL 37.796875 0 \nL 37.796875 17.1875 \nL 4.890625 17.1875 \nL 4.890625 26.703125 \nz\n\" id=\"DejaVuSans-52\"/>\n      </defs>\n      <g transform=\"translate(59.236919 394.488826)rotate(-60)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"254.492188\" xlink:href=\"#DejaVuSans-45\"/>\n       <use x=\"290.576172\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"354.199219\" xlink:href=\"#DejaVuSans-49\"/>\n       <use x=\"417.822266\" xlink:href=\"#DejaVuSans-45\"/>\n       <use x=\"453.90625\" xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"517.529297\" xlink:href=\"#DejaVuSans-52\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"xtick_2\">\n     <g id=\"line2d_2\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"181.652816\" xlink:href=\"#mc526054e33\" y=\"333.36\"/>\n      </g>\n     </g>\n     <g id=\"text_2\">\n      <!-- 2020-02-03 -->\n      <defs>\n       <path d=\"M 40.578125 39.3125 \nQ 47.65625 37.796875 51.625 33 \nQ 55.609375 28.21875 55.609375 21.1875 \nQ 55.609375 10.40625 48.1875 4.484375 \nQ 40.765625 -1.421875 27.09375 -1.421875 \nQ 22.515625 -1.421875 17.65625 -0.515625 \nQ 12.796875 0.390625 7.625 2.203125 \nL 7.625 11.71875 \nQ 11.71875 9.328125 16.59375 8.109375 \nQ 21.484375 6.890625 26.8125 6.890625 \nQ 36.078125 6.890625 40.9375 10.546875 \nQ 45.796875 14.203125 45.796875 21.1875 \nQ 45.796875 27.640625 41.28125 31.265625 \nQ 36.765625 34.90625 28.71875 34.90625 \nL 20.21875 34.90625 \nL 20.21875 43.015625 \nL 29.109375 43.015625 \nQ 36.375 43.015625 40.234375 45.921875 \nQ 44.09375 48.828125 44.09375 54.296875 \nQ 44.09375 59.90625 40.109375 62.90625 \nQ 36.140625 65.921875 28.71875 65.921875 \nQ 24.65625 65.921875 20.015625 65.03125 \nQ 15.375 64.15625 9.8125 62.3125 \nL 9.8125 71.09375 \nQ 15.4375 72.65625 20.34375 73.4375 \nQ 25.25 74.21875 29.59375 74.21875 \nQ 40.828125 74.21875 47.359375 69.109375 \nQ 53.90625 64.015625 53.90625 55.328125 \nQ 53.90625 49.265625 50.4375 45.09375 \nQ 46.96875 40.921875 40.578125 39.3125 \nz\n\" id=\"DejaVuSans-51\"/>\n      </defs>\n      <g transform=\"translate(169.513599 394.488826)rotate(-60)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"254.492188\" xlink:href=\"#DejaVuSans-45\"/>\n       <use x=\"290.576172\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"354.199219\" xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"417.822266\" xlink:href=\"#DejaVuSans-45\"/>\n       <use x=\"453.90625\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"517.529297\" xlink:href=\"#DejaVuSans-51\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"xtick_3\">\n     <g id=\"line2d_3\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"291.929496\" xlink:href=\"#mc526054e33\" y=\"333.36\"/>\n      </g>\n     </g>\n     <g id=\"text_3\">\n      <!-- 2020-02-13 -->\n      <g transform=\"translate(279.790279 394.488826)rotate(-60)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"254.492188\" xlink:href=\"#DejaVuSans-45\"/>\n       <use x=\"290.576172\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"354.199219\" xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"417.822266\" xlink:href=\"#DejaVuSans-45\"/>\n       <use x=\"453.90625\" xlink:href=\"#DejaVuSans-49\"/>\n       <use x=\"517.529297\" xlink:href=\"#DejaVuSans-51\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"xtick_4\">\n     <g id=\"line2d_4\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"402.206176\" xlink:href=\"#mc526054e33\" y=\"333.36\"/>\n      </g>\n     </g>\n     <g id=\"text_4\">\n      <!-- 2020-02-23 -->\n      <g transform=\"translate(390.066958 394.488826)rotate(-60)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"254.492188\" xlink:href=\"#DejaVuSans-45\"/>\n       <use x=\"290.576172\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"354.199219\" xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"417.822266\" xlink:href=\"#DejaVuSans-45\"/>\n       <use x=\"453.90625\" xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"517.529297\" xlink:href=\"#DejaVuSans-51\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"xtick_5\">\n     <g id=\"line2d_5\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"512.482856\" xlink:href=\"#mc526054e33\" y=\"333.36\"/>\n      </g>\n     </g>\n     <g id=\"text_5\">\n      <!-- 2020-03-04 -->\n      <g transform=\"translate(500.343638 394.488826)rotate(-60)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"254.492188\" xlink:href=\"#DejaVuSans-45\"/>\n       <use x=\"290.576172\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"354.199219\" xlink:href=\"#DejaVuSans-51\"/>\n       <use x=\"417.822266\" xlink:href=\"#DejaVuSans-45\"/>\n       <use x=\"453.90625\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"517.529297\" xlink:href=\"#DejaVuSans-52\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"text_6\">\n     <!-- date -->\n     <defs>\n      <path d=\"M 45.40625 46.390625 \nL 45.40625 75.984375 \nL 54.390625 75.984375 \nL 54.390625 0 \nL 45.40625 0 \nL 45.40625 8.203125 \nQ 42.578125 3.328125 38.25 0.953125 \nQ 33.9375 -1.421875 27.875 -1.421875 \nQ 17.96875 -1.421875 11.734375 6.484375 \nQ 5.515625 14.40625 5.515625 27.296875 \nQ 5.515625 40.1875 11.734375 48.09375 \nQ 17.96875 56 27.875 56 \nQ 33.9375 56 38.25 53.625 \nQ 42.578125 51.265625 45.40625 46.390625 \nz\nM 14.796875 27.296875 \nQ 14.796875 17.390625 18.875 11.75 \nQ 22.953125 6.109375 30.078125 6.109375 \nQ 37.203125 6.109375 41.296875 11.75 \nQ 45.40625 17.390625 45.40625 27.296875 \nQ 45.40625 37.203125 41.296875 42.84375 \nQ 37.203125 48.484375 30.078125 48.484375 \nQ 22.953125 48.484375 18.875 42.84375 \nQ 14.796875 37.203125 14.796875 27.296875 \nz\n\" id=\"DejaVuSans-100\"/>\n      <path d=\"M 34.28125 27.484375 \nQ 23.390625 27.484375 19.1875 25 \nQ 14.984375 22.515625 14.984375 16.5 \nQ 14.984375 11.71875 18.140625 8.90625 \nQ 21.296875 6.109375 26.703125 6.109375 \nQ 34.1875 6.109375 38.703125 11.40625 \nQ 43.21875 16.703125 43.21875 25.484375 \nL 43.21875 27.484375 \nz\nM 52.203125 31.203125 \nL 52.203125 0 \nL 43.21875 0 \nL 43.21875 8.296875 \nQ 40.140625 3.328125 35.546875 0.953125 \nQ 30.953125 -1.421875 24.3125 -1.421875 \nQ 15.921875 -1.421875 10.953125 3.296875 \nQ 6 8.015625 6 15.921875 \nQ 6 25.140625 12.171875 29.828125 \nQ 18.359375 34.515625 30.609375 34.515625 \nL 43.21875 34.515625 \nL 43.21875 35.40625 \nQ 43.21875 41.609375 39.140625 45 \nQ 35.0625 48.390625 27.6875 48.390625 \nQ 23 48.390625 18.546875 47.265625 \nQ 14.109375 46.140625 10.015625 43.890625 \nL 10.015625 52.203125 \nQ 14.9375 54.109375 19.578125 55.046875 \nQ 24.21875 56 28.609375 56 \nQ 40.484375 56 46.34375 49.84375 \nQ 52.203125 43.703125 52.203125 31.203125 \nz\n\" id=\"DejaVuSans-97\"/>\n      <path d=\"M 18.3125 70.21875 \nL 18.3125 54.6875 \nL 36.8125 54.6875 \nL 36.8125 47.703125 \nL 18.3125 47.703125 \nL 18.3125 18.015625 \nQ 18.3125 11.328125 20.140625 9.421875 \nQ 21.96875 7.515625 27.59375 7.515625 \nL 36.8125 7.515625 \nL 36.8125 0 \nL 27.59375 0 \nQ 17.1875 0 13.234375 3.875 \nQ 9.28125 7.765625 9.28125 18.015625 \nL 9.28125 47.703125 \nL 2.6875 47.703125 \nL 2.6875 54.6875 \nL 9.28125 54.6875 \nL 9.28125 70.21875 \nz\n\" id=\"DejaVuSans-116\"/>\n      <path d=\"M 56.203125 29.59375 \nL 56.203125 25.203125 \nL 14.890625 25.203125 \nQ 15.484375 15.921875 20.484375 11.0625 \nQ 25.484375 6.203125 34.421875 6.203125 \nQ 39.59375 6.203125 44.453125 7.46875 \nQ 49.3125 8.734375 54.109375 11.28125 \nL 54.109375 2.78125 \nQ 49.265625 0.734375 44.1875 -0.34375 \nQ 39.109375 -1.421875 33.890625 -1.421875 \nQ 20.796875 -1.421875 13.15625 6.1875 \nQ 5.515625 13.8125 5.515625 26.8125 \nQ 5.515625 40.234375 12.765625 48.109375 \nQ 20.015625 56 32.328125 56 \nQ 43.359375 56 49.78125 48.890625 \nQ 56.203125 41.796875 56.203125 29.59375 \nz\nM 47.21875 32.234375 \nQ 47.125 39.59375 43.09375 43.984375 \nQ 39.0625 48.390625 32.421875 48.390625 \nQ 24.90625 48.390625 20.390625 44.140625 \nQ 15.875 39.890625 15.1875 32.171875 \nz\n\" id=\"DejaVuSans-101\"/>\n     </defs>\n     <g transform=\"translate(313.7375 407.127108)scale(0.1 -0.1)\">\n      <use xlink:href=\"#DejaVuSans-100\"/>\n      <use x=\"63.476562\" xlink:href=\"#DejaVuSans-97\"/>\n      <use x=\"124.755859\" xlink:href=\"#DejaVuSans-116\"/>\n      <use x=\"163.964844\" xlink:href=\"#DejaVuSans-101\"/>\n     </g>\n    </g>\n   </g>\n   <g id=\"matplotlib.axis_2\">\n    <g id=\"ytick_1\">\n     <g id=\"line2d_6\">\n      <defs>\n       <path d=\"M 0 0 \nL -3.5 0 \n\" id=\"md5d74c9725\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n      </defs>\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"46.0125\" xlink:href=\"#md5d74c9725\" y=\"318.626368\"/>\n      </g>\n     </g>\n     <g id=\"text_7\">\n      <!-- 0 -->\n      <g transform=\"translate(32.65 322.425587)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_2\">\n     <g id=\"line2d_7\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"46.0125\" xlink:href=\"#md5d74c9725\" y=\"281.897424\"/>\n      </g>\n     </g>\n     <g id=\"text_8\">\n      <!-- 10000 -->\n      <g transform=\"translate(7.2 285.696643)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-49\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"254.492188\" xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_3\">\n     <g id=\"line2d_8\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"46.0125\" xlink:href=\"#md5d74c9725\" y=\"245.16848\"/>\n      </g>\n     </g>\n     <g id=\"text_9\">\n      <!-- 20000 -->\n      <g transform=\"translate(7.2 248.967699)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"254.492188\" xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_4\">\n     <g id=\"line2d_9\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"46.0125\" xlink:href=\"#md5d74c9725\" y=\"208.439536\"/>\n      </g>\n     </g>\n     <g id=\"text_10\">\n      <!-- 30000 -->\n      <g transform=\"translate(7.2 212.238755)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-51\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"254.492188\" xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_5\">\n     <g id=\"line2d_10\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"46.0125\" xlink:href=\"#md5d74c9725\" y=\"171.710592\"/>\n      </g>\n     </g>\n     <g id=\"text_11\">\n      <!-- 40000 -->\n      <g transform=\"translate(7.2 175.509811)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-52\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"254.492188\" xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_6\">\n     <g id=\"line2d_11\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"46.0125\" xlink:href=\"#md5d74c9725\" y=\"134.981649\"/>\n      </g>\n     </g>\n     <g id=\"text_12\">\n      <!-- 50000 -->\n      <defs>\n       <path d=\"M 10.796875 72.90625 \nL 49.515625 72.90625 \nL 49.515625 64.59375 \nL 19.828125 64.59375 \nL 19.828125 46.734375 \nQ 21.96875 47.46875 24.109375 47.828125 \nQ 26.265625 48.1875 28.421875 48.1875 \nQ 40.625 48.1875 47.75 41.5 \nQ 54.890625 34.8125 54.890625 23.390625 \nQ 54.890625 11.625 47.5625 5.09375 \nQ 40.234375 -1.421875 26.90625 -1.421875 \nQ 22.3125 -1.421875 17.546875 -0.640625 \nQ 12.796875 0.140625 7.71875 1.703125 \nL 7.71875 11.625 \nQ 12.109375 9.234375 16.796875 8.0625 \nQ 21.484375 6.890625 26.703125 6.890625 \nQ 35.15625 6.890625 40.078125 11.328125 \nQ 45.015625 15.765625 45.015625 23.390625 \nQ 45.015625 31 40.078125 35.4375 \nQ 35.15625 39.890625 26.703125 39.890625 \nQ 22.75 39.890625 18.8125 39.015625 \nQ 14.890625 38.140625 10.796875 36.28125 \nz\n\" id=\"DejaVuSans-53\"/>\n      </defs>\n      <g transform=\"translate(7.2 138.780867)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-53\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"254.492188\" xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_7\">\n     <g id=\"line2d_12\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"46.0125\" xlink:href=\"#md5d74c9725\" y=\"98.252705\"/>\n      </g>\n     </g>\n     <g id=\"text_13\">\n      <!-- 60000 -->\n      <defs>\n       <path d=\"M 33.015625 40.375 \nQ 26.375 40.375 22.484375 35.828125 \nQ 18.609375 31.296875 18.609375 23.390625 \nQ 18.609375 15.53125 22.484375 10.953125 \nQ 26.375 6.390625 33.015625 6.390625 \nQ 39.65625 6.390625 43.53125 10.953125 \nQ 47.40625 15.53125 47.40625 23.390625 \nQ 47.40625 31.296875 43.53125 35.828125 \nQ 39.65625 40.375 33.015625 40.375 \nz\nM 52.59375 71.296875 \nL 52.59375 62.3125 \nQ 48.875 64.0625 45.09375 64.984375 \nQ 41.3125 65.921875 37.59375 65.921875 \nQ 27.828125 65.921875 22.671875 59.328125 \nQ 17.53125 52.734375 16.796875 39.40625 \nQ 19.671875 43.65625 24.015625 45.921875 \nQ 28.375 48.1875 33.59375 48.1875 \nQ 44.578125 48.1875 50.953125 41.515625 \nQ 57.328125 34.859375 57.328125 23.390625 \nQ 57.328125 12.15625 50.6875 5.359375 \nQ 44.046875 -1.421875 33.015625 -1.421875 \nQ 20.359375 -1.421875 13.671875 8.265625 \nQ 6.984375 17.96875 6.984375 36.375 \nQ 6.984375 53.65625 15.1875 63.9375 \nQ 23.390625 74.21875 37.203125 74.21875 \nQ 40.921875 74.21875 44.703125 73.484375 \nQ 48.484375 72.75 52.59375 71.296875 \nz\n\" id=\"DejaVuSans-54\"/>\n      </defs>\n      <g transform=\"translate(7.2 102.051923)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-54\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"254.492188\" xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_8\">\n     <g id=\"line2d_13\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"46.0125\" xlink:href=\"#md5d74c9725\" y=\"61.523761\"/>\n      </g>\n     </g>\n     <g id=\"text_14\">\n      <!-- 70000 -->\n      <defs>\n       <path d=\"M 8.203125 72.90625 \nL 55.078125 72.90625 \nL 55.078125 68.703125 \nL 28.609375 0 \nL 18.3125 0 \nL 43.21875 64.59375 \nL 8.203125 64.59375 \nz\n\" id=\"DejaVuSans-55\"/>\n      </defs>\n      <g transform=\"translate(7.2 65.32298)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-55\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"254.492188\" xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_9\">\n     <g id=\"line2d_14\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"46.0125\" xlink:href=\"#md5d74c9725\" y=\"24.794817\"/>\n      </g>\n     </g>\n     <g id=\"text_15\">\n      <!-- 80000 -->\n      <defs>\n       <path d=\"M 31.78125 34.625 \nQ 24.75 34.625 20.71875 30.859375 \nQ 16.703125 27.09375 16.703125 20.515625 \nQ 16.703125 13.921875 20.71875 10.15625 \nQ 24.75 6.390625 31.78125 6.390625 \nQ 38.8125 6.390625 42.859375 10.171875 \nQ 46.921875 13.96875 46.921875 20.515625 \nQ 46.921875 27.09375 42.890625 30.859375 \nQ 38.875 34.625 31.78125 34.625 \nz\nM 21.921875 38.8125 \nQ 15.578125 40.375 12.03125 44.71875 \nQ 8.5 49.078125 8.5 55.328125 \nQ 8.5 64.0625 14.71875 69.140625 \nQ 20.953125 74.21875 31.78125 74.21875 \nQ 42.671875 74.21875 48.875 69.140625 \nQ 55.078125 64.0625 55.078125 55.328125 \nQ 55.078125 49.078125 51.53125 44.71875 \nQ 48 40.375 41.703125 38.8125 \nQ 48.828125 37.15625 52.796875 32.3125 \nQ 56.78125 27.484375 56.78125 20.515625 \nQ 56.78125 9.90625 50.3125 4.234375 \nQ 43.84375 -1.421875 31.78125 -1.421875 \nQ 19.734375 -1.421875 13.25 4.234375 \nQ 6.78125 9.90625 6.78125 20.515625 \nQ 6.78125 27.484375 10.78125 32.3125 \nQ 14.796875 37.15625 21.921875 38.8125 \nz\nM 18.3125 54.390625 \nQ 18.3125 48.734375 21.84375 45.5625 \nQ 25.390625 42.390625 31.78125 42.390625 \nQ 38.140625 42.390625 41.71875 45.5625 \nQ 45.3125 48.734375 45.3125 54.390625 \nQ 45.3125 60.0625 41.71875 63.234375 \nQ 38.140625 66.40625 31.78125 66.40625 \nQ 25.390625 66.40625 21.84375 63.234375 \nQ 18.3125 60.0625 18.3125 54.390625 \nz\n\" id=\"DejaVuSans-56\"/>\n      </defs>\n      <g transform=\"translate(7.2 28.594036)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-56\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"254.492188\" xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n   </g>\n   <g id=\"line2d_15\">\n    <path clip-path=\"url(#p039ab0f046)\" d=\"M 71.376136 315.577865 \nL 82.403804 313.899353 \nL 93.431472 311.372401 \nL 104.45914 308.547946 \nL 115.486808 302.04325 \nL 126.514476 296.684497 \nL 137.542144 290.304679 \nL 148.569812 283.028675 \nL 159.59748 275.31927 \nL 170.625148 265.810147 \nL 181.652816 255.43422 \nL 192.680484 243.559752 \nL 203.708152 229.286885 \nL 214.73582 215.719213 \nL 225.763488 204.175306 \nL 236.791156 191.742558 \nL 247.818824 182.002042 \nL 258.846492 171.082527 \nL 269.87416 162.021497 \nL 280.901828 154.620615 \nL 291.929496 98.972592 \nL 302.957164 84.108388 \nL 313.984832 74.408274 \nL 325.0125 67.033102 \nL 336.040168 59.511015 \nL 347.067836 52.57659 \nL 358.095504 46.152698 \nL 369.123172 44.716596 \nL 380.15084 41.451393 \nL 391.178508 38.428601 \nL 402.206176 36.048565 \nL 413.233844 35.262566 \nL 424.261512 33.396736 \nL 435.28918 31.90554 \nL 446.316848 30.315177 \nL 457.344516 29.114141 \nL 468.372184 27.545815 \nL 479.399852 25.441246 \nL 490.42752 24.699322 \nL 501.455188 24.24021 \nL 512.482856 23.803135 \nL 523.510524 23.292603 \nL 534.538192 22.767379 \nL 545.56586 22.403763 \nL 556.593528 22.242155 \nL 567.621196 22.09524 \nL 578.648864 22.025455 \n\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n   </g>\n   <g id=\"line2d_16\">\n    <path clip-path=\"url(#p039ab0f046)\" d=\"M 71.376136 318.501489 \nL 82.403804 318.486798 \nL 93.431472 318.446396 \nL 104.45914 318.43905 \nL 115.486808 318.405994 \nL 126.514476 318.24806 \nL 137.542144 318.170929 \nL 148.569812 317.998303 \nL 159.59748 317.675088 \nL 170.625148 317.421658 \nL 181.652816 316.881743 \nL 192.680484 316.305099 \nL 203.708152 315.350146 \nL 214.73582 314.391521 \nL 225.763488 312.97011 \nL 236.791156 311.096934 \nL 247.818824 308.896871 \nL 258.846492 306.575601 \nL 269.87416 303.949482 \nL 280.901828 301.216848 \nL 291.929496 296.915889 \nL 302.957164 293.933499 \nL 313.984832 288.890615 \nL 325.0125 284.031376 \nL 336.040168 278.797501 \nL 347.067836 272.524197 \nL 358.095504 265.824838 \nL 369.123172 259.290759 \nL 380.15084 251.544625 \nL 391.178508 242.748043 \nL 402.206176 234.561161 \nL 413.233844 227.780998 \nL 424.261512 218.271874 \nL 435.28918 209.376124 \nL 446.316848 199.275665 \nL 457.344516 185.972441 \nL 468.372184 175.376141 \nL 479.399852 165.742139 \nL 490.42752 155.322138 \nL 501.455188 145.251061 \nL 512.482856 135.510545 \nL 523.510524 127.470579 \nL 534.538192 121.296444 \nL 545.56586 115.133327 \nL 556.593528 109.03265 \nL 567.621196 103.394757 \nL 578.648864 98.631013 \n\" style=\"fill:none;stroke:#ff7f0e;stroke-linecap:square;stroke-width:1.5;\"/>\n   </g>\n   <g id=\"line2d_17\">\n    <path clip-path=\"url(#p039ab0f046)\" d=\"M 71.376136 318.534545 \nL 82.403804 318.475779 \nL 93.431472 318.420686 \nL 104.45914 318.332536 \nL 115.486808 318.237041 \nL 126.514476 318.141546 \nL 137.542144 318.001976 \nL 148.569812 317.844041 \nL 159.59748 317.733854 \nL 170.625148 317.509808 \nL 181.652816 317.300453 \nL 192.680484 317.065388 \nL 203.708152 316.82665 \nL 214.73582 316.558528 \nL 225.763488 316.290407 \nL 236.791156 315.974538 \nL 247.818824 315.64765 \nL 258.846492 315.29138 \nL 269.87416 314.894707 \nL 280.901828 314.538436 \nL 291.929496 313.605521 \nL 302.957164 313.557774 \nL 313.984832 313.03255 \nL 325.0125 312.510999 \nL 336.040168 312.125345 \nL 347.067836 311.765401 \nL 358.095504 311.265887 \nL 369.123172 310.847178 \nL 380.15084 310.413776 \nL 391.178508 310.01343 \nL 402.206176 309.65716 \nL 413.233844 309.106226 \nL 424.261512 308.84545 \nL 435.28918 308.65446 \nL 446.316848 308.547946 \nL 457.344516 308.386338 \nL 468.372184 308.213712 \nL 479.399852 308.085161 \nL 490.42752 307.930899 \nL 501.455188 307.81704 \nL 512.482856 307.67747 \nL 523.510524 307.56361 \nL 534.538192 307.453423 \nL 545.56586 307.350582 \nL 556.593528 307.251414 \nL 567.621196 307.17061 \nL 578.648864 307.108171 \n\" style=\"fill:none;stroke:#2ca02c;stroke-linecap:square;stroke-width:1.5;\"/>\n   </g>\n   <g id=\"patch_3\">\n    <path d=\"M 46.0125 333.36 \nL 46.0125 7.2 \n\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n   </g>\n   <g id=\"patch_4\">\n    <path d=\"M 604.0125 333.36 \nL 604.0125 7.2 \n\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n   </g>\n   <g id=\"patch_5\">\n    <path d=\"M 46.0125 333.36 \nL 604.0125 333.36 \n\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n   </g>\n   <g id=\"patch_6\">\n    <path d=\"M 46.0125 7.2 \nL 604.0125 7.2 \n\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n   </g>\n   <g id=\"legend_1\">\n    <g id=\"patch_7\">\n     <path d=\"M 53.0125 60.06875 \nL 162.859375 60.06875 \nQ 164.859375 60.06875 164.859375 58.06875 \nL 164.859375 14.2 \nQ 164.859375 12.2 162.859375 12.2 \nL 53.0125 12.2 \nQ 51.0125 12.2 51.0125 14.2 \nL 51.0125 58.06875 \nQ 51.0125 60.06875 53.0125 60.06875 \nz\n\" style=\"fill:#ffffff;opacity:0.8;stroke:#cccccc;stroke-linejoin:miter;\"/>\n    </g>\n    <g id=\"line2d_18\">\n     <path d=\"M 55.0125 20.298438 \nL 75.0125 20.298438 \n\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n    </g>\n    <g id=\"line2d_19\"/>\n    <g id=\"text_16\">\n     <!-- confirmed_num -->\n     <defs>\n      <path d=\"M 48.78125 52.59375 \nL 48.78125 44.1875 \nQ 44.96875 46.296875 41.140625 47.34375 \nQ 37.3125 48.390625 33.40625 48.390625 \nQ 24.65625 48.390625 19.8125 42.84375 \nQ 14.984375 37.3125 14.984375 27.296875 \nQ 14.984375 17.28125 19.8125 11.734375 \nQ 24.65625 6.203125 33.40625 6.203125 \nQ 37.3125 6.203125 41.140625 7.25 \nQ 44.96875 8.296875 48.78125 10.40625 \nL 48.78125 2.09375 \nQ 45.015625 0.34375 40.984375 -0.53125 \nQ 36.96875 -1.421875 32.421875 -1.421875 \nQ 20.0625 -1.421875 12.78125 6.34375 \nQ 5.515625 14.109375 5.515625 27.296875 \nQ 5.515625 40.671875 12.859375 48.328125 \nQ 20.21875 56 33.015625 56 \nQ 37.15625 56 41.109375 55.140625 \nQ 45.0625 54.296875 48.78125 52.59375 \nz\n\" id=\"DejaVuSans-99\"/>\n      <path d=\"M 30.609375 48.390625 \nQ 23.390625 48.390625 19.1875 42.75 \nQ 14.984375 37.109375 14.984375 27.296875 \nQ 14.984375 17.484375 19.15625 11.84375 \nQ 23.34375 6.203125 30.609375 6.203125 \nQ 37.796875 6.203125 41.984375 11.859375 \nQ 46.1875 17.53125 46.1875 27.296875 \nQ 46.1875 37.015625 41.984375 42.703125 \nQ 37.796875 48.390625 30.609375 48.390625 \nz\nM 30.609375 56 \nQ 42.328125 56 49.015625 48.375 \nQ 55.71875 40.765625 55.71875 27.296875 \nQ 55.71875 13.875 49.015625 6.21875 \nQ 42.328125 -1.421875 30.609375 -1.421875 \nQ 18.84375 -1.421875 12.171875 6.21875 \nQ 5.515625 13.875 5.515625 27.296875 \nQ 5.515625 40.765625 12.171875 48.375 \nQ 18.84375 56 30.609375 56 \nz\n\" id=\"DejaVuSans-111\"/>\n      <path d=\"M 54.890625 33.015625 \nL 54.890625 0 \nL 45.90625 0 \nL 45.90625 32.71875 \nQ 45.90625 40.484375 42.875 44.328125 \nQ 39.84375 48.1875 33.796875 48.1875 \nQ 26.515625 48.1875 22.3125 43.546875 \nQ 18.109375 38.921875 18.109375 30.90625 \nL 18.109375 0 \nL 9.078125 0 \nL 9.078125 54.6875 \nL 18.109375 54.6875 \nL 18.109375 46.1875 \nQ 21.34375 51.125 25.703125 53.5625 \nQ 30.078125 56 35.796875 56 \nQ 45.21875 56 50.046875 50.171875 \nQ 54.890625 44.34375 54.890625 33.015625 \nz\n\" id=\"DejaVuSans-110\"/>\n      <path d=\"M 37.109375 75.984375 \nL 37.109375 68.5 \nL 28.515625 68.5 \nQ 23.6875 68.5 21.796875 66.546875 \nQ 19.921875 64.59375 19.921875 59.515625 \nL 19.921875 54.6875 \nL 34.71875 54.6875 \nL 34.71875 47.703125 \nL 19.921875 47.703125 \nL 19.921875 0 \nL 10.890625 0 \nL 10.890625 47.703125 \nL 2.296875 47.703125 \nL 2.296875 54.6875 \nL 10.890625 54.6875 \nL 10.890625 58.5 \nQ 10.890625 67.625 15.140625 71.796875 \nQ 19.390625 75.984375 28.609375 75.984375 \nz\n\" id=\"DejaVuSans-102\"/>\n      <path d=\"M 9.421875 54.6875 \nL 18.40625 54.6875 \nL 18.40625 0 \nL 9.421875 0 \nz\nM 9.421875 75.984375 \nL 18.40625 75.984375 \nL 18.40625 64.59375 \nL 9.421875 64.59375 \nz\n\" id=\"DejaVuSans-105\"/>\n      <path d=\"M 41.109375 46.296875 \nQ 39.59375 47.171875 37.8125 47.578125 \nQ 36.03125 48 33.890625 48 \nQ 26.265625 48 22.1875 43.046875 \nQ 18.109375 38.09375 18.109375 28.8125 \nL 18.109375 0 \nL 9.078125 0 \nL 9.078125 54.6875 \nL 18.109375 54.6875 \nL 18.109375 46.1875 \nQ 20.953125 51.171875 25.484375 53.578125 \nQ 30.03125 56 36.53125 56 \nQ 37.453125 56 38.578125 55.875 \nQ 39.703125 55.765625 41.0625 55.515625 \nz\n\" id=\"DejaVuSans-114\"/>\n      <path d=\"M 52 44.1875 \nQ 55.375 50.25 60.0625 53.125 \nQ 64.75 56 71.09375 56 \nQ 79.640625 56 84.28125 50.015625 \nQ 88.921875 44.046875 88.921875 33.015625 \nL 88.921875 0 \nL 79.890625 0 \nL 79.890625 32.71875 \nQ 79.890625 40.578125 77.09375 44.375 \nQ 74.3125 48.1875 68.609375 48.1875 \nQ 61.625 48.1875 57.5625 43.546875 \nQ 53.515625 38.921875 53.515625 30.90625 \nL 53.515625 0 \nL 44.484375 0 \nL 44.484375 32.71875 \nQ 44.484375 40.625 41.703125 44.40625 \nQ 38.921875 48.1875 33.109375 48.1875 \nQ 26.21875 48.1875 22.15625 43.53125 \nQ 18.109375 38.875 18.109375 30.90625 \nL 18.109375 0 \nL 9.078125 0 \nL 9.078125 54.6875 \nL 18.109375 54.6875 \nL 18.109375 46.1875 \nQ 21.1875 51.21875 25.484375 53.609375 \nQ 29.78125 56 35.6875 56 \nQ 41.65625 56 45.828125 52.96875 \nQ 50 49.953125 52 44.1875 \nz\n\" id=\"DejaVuSans-109\"/>\n      <path d=\"M 50.984375 -16.609375 \nL 50.984375 -23.578125 \nL -0.984375 -23.578125 \nL -0.984375 -16.609375 \nz\n\" id=\"DejaVuSans-95\"/>\n      <path d=\"M 8.5 21.578125 \nL 8.5 54.6875 \nL 17.484375 54.6875 \nL 17.484375 21.921875 \nQ 17.484375 14.15625 20.5 10.265625 \nQ 23.53125 6.390625 29.59375 6.390625 \nQ 36.859375 6.390625 41.078125 11.03125 \nQ 45.3125 15.671875 45.3125 23.6875 \nL 45.3125 54.6875 \nL 54.296875 54.6875 \nL 54.296875 0 \nL 45.3125 0 \nL 45.3125 8.40625 \nQ 42.046875 3.421875 37.71875 1 \nQ 33.40625 -1.421875 27.6875 -1.421875 \nQ 18.265625 -1.421875 13.375 4.4375 \nQ 8.5 10.296875 8.5 21.578125 \nz\nM 31.109375 56 \nz\n\" id=\"DejaVuSans-117\"/>\n     </defs>\n     <g transform=\"translate(83.0125 23.798438)scale(0.1 -0.1)\">\n      <use xlink:href=\"#DejaVuSans-99\"/>\n      <use x=\"54.980469\" xlink:href=\"#DejaVuSans-111\"/>\n      <use x=\"116.162109\" xlink:href=\"#DejaVuSans-110\"/>\n      <use x=\"179.541016\" xlink:href=\"#DejaVuSans-102\"/>\n      <use x=\"214.746094\" xlink:href=\"#DejaVuSans-105\"/>\n      <use x=\"242.529297\" xlink:href=\"#DejaVuSans-114\"/>\n      <use x=\"281.892578\" xlink:href=\"#DejaVuSans-109\"/>\n      <use x=\"379.304688\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"440.828125\" xlink:href=\"#DejaVuSans-100\"/>\n      <use x=\"504.304688\" xlink:href=\"#DejaVuSans-95\"/>\n      <use x=\"554.304688\" xlink:href=\"#DejaVuSans-110\"/>\n      <use x=\"617.683594\" xlink:href=\"#DejaVuSans-117\"/>\n      <use x=\"681.0625\" xlink:href=\"#DejaVuSans-109\"/>\n     </g>\n    </g>\n    <g id=\"line2d_20\">\n     <path d=\"M 55.0125 35.254688 \nL 75.0125 35.254688 \n\" style=\"fill:none;stroke:#ff7f0e;stroke-linecap:square;stroke-width:1.5;\"/>\n    </g>\n    <g id=\"line2d_21\"/>\n    <g id=\"text_17\">\n     <!-- cured_num -->\n     <g transform=\"translate(83.0125 38.754688)scale(0.1 -0.1)\">\n      <use xlink:href=\"#DejaVuSans-99\"/>\n      <use x=\"54.980469\" xlink:href=\"#DejaVuSans-117\"/>\n      <use x=\"118.359375\" xlink:href=\"#DejaVuSans-114\"/>\n      <use x=\"157.222656\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"218.746094\" xlink:href=\"#DejaVuSans-100\"/>\n      <use x=\"282.222656\" xlink:href=\"#DejaVuSans-95\"/>\n      <use x=\"332.222656\" xlink:href=\"#DejaVuSans-110\"/>\n      <use x=\"395.601562\" xlink:href=\"#DejaVuSans-117\"/>\n      <use x=\"458.980469\" xlink:href=\"#DejaVuSans-109\"/>\n     </g>\n    </g>\n    <g id=\"line2d_22\">\n     <path d=\"M 55.0125 50.210938 \nL 75.0125 50.210938 \n\" style=\"fill:none;stroke:#2ca02c;stroke-linecap:square;stroke-width:1.5;\"/>\n    </g>\n    <g id=\"line2d_23\"/>\n    <g id=\"text_18\">\n     <!-- dead_num -->\n     <g transform=\"translate(83.0125 53.710938)scale(0.1 -0.1)\">\n      <use xlink:href=\"#DejaVuSans-100\"/>\n      <use x=\"63.476562\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"125\" xlink:href=\"#DejaVuSans-97\"/>\n      <use x=\"186.279297\" xlink:href=\"#DejaVuSans-100\"/>\n      <use x=\"249.755859\" xlink:href=\"#DejaVuSans-95\"/>\n      <use x=\"299.755859\" xlink:href=\"#DejaVuSans-110\"/>\n      <use x=\"363.134766\" xlink:href=\"#DejaVuSans-117\"/>\n      <use x=\"426.513672\" xlink:href=\"#DejaVuSans-109\"/>\n     </g>\n    </g>\n   </g>\n  </g>\n </g>\n <defs>\n  <clipPath id=\"p039ab0f046\">\n   <rect height=\"326.16\" width=\"558\" x=\"46.0125\" y=\"7.2\"/>\n  </clipPath>\n </defs>\n</svg>\n"
          },
          "metadata": {
            "tags": [],
            "needs_background": "light"
          }
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "LxgvPptKFlDt",
        "outputId": "2fb36904-08aa-4638-831b-1a36bb93e281",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 576
        }
      },
      "source": [
        "dfdata = df.set_index(\"date\")\n",
        "dfdiff = dfdata.diff(periods=1).dropna()\n",
        "dfdiff = dfdiff.reset_index(\"date\")\n",
        "\n",
        "dfdiff.plot(x = \"date\",y = [\"confirmed_num\",\"cured_num\",\"dead_num\"],figsize=(10,6))\n",
        "plt.xticks(rotation=60)\n",
        "dfdiff = dfdiff.drop(\"date\",axis = 1).astype(\"float32\")"
      ],
      "execution_count": 5,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 720x432 with 1 Axes>"
            ],
            "image/svg+xml": "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n<!-- Created with matplotlib (https://matplotlib.org/) -->\n<svg height=\"416.406795pt\" version=\"1.1\" viewBox=\"0 0 611.2125 416.406795\" width=\"611.2125pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <defs>\n  <style type=\"text/css\">\n*{stroke-linecap:butt;stroke-linejoin:round;}\n  </style>\n </defs>\n <g id=\"figure_1\">\n  <g id=\"patch_1\">\n   <path d=\"M 0 416.406795 \nL 611.2125 416.406795 \nL 611.2125 0 \nL 0 0 \nz\n\" style=\"fill:none;\"/>\n  </g>\n  <g id=\"axes_1\">\n   <g id=\"patch_2\">\n    <path d=\"M 46.0125 333.36 \nL 604.0125 333.36 \nL 604.0125 7.2 \nL 46.0125 7.2 \nz\n\" style=\"fill:#ffffff;\"/>\n   </g>\n   <g id=\"matplotlib.axis_1\">\n    <g id=\"xtick_1\">\n     <g id=\"line2d_1\">\n      <defs>\n       <path d=\"M 0 0 \nL 0 3.5 \n\" id=\"m2fec3d20ee\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n      </defs>\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"71.376136\" xlink:href=\"#m2fec3d20ee\" y=\"333.36\"/>\n      </g>\n     </g>\n     <g id=\"text_1\">\n      <!-- 2020-01-25 -->\n      <defs>\n       <path d=\"M 19.1875 8.296875 \nL 53.609375 8.296875 \nL 53.609375 0 \nL 7.328125 0 \nL 7.328125 8.296875 \nQ 12.9375 14.109375 22.625 23.890625 \nQ 32.328125 33.6875 34.8125 36.53125 \nQ 39.546875 41.84375 41.421875 45.53125 \nQ 43.3125 49.21875 43.3125 52.78125 \nQ 43.3125 58.59375 39.234375 62.25 \nQ 35.15625 65.921875 28.609375 65.921875 \nQ 23.96875 65.921875 18.8125 64.3125 \nQ 13.671875 62.703125 7.8125 59.421875 \nL 7.8125 69.390625 \nQ 13.765625 71.78125 18.9375 73 \nQ 24.125 74.21875 28.421875 74.21875 \nQ 39.75 74.21875 46.484375 68.546875 \nQ 53.21875 62.890625 53.21875 53.421875 \nQ 53.21875 48.921875 51.53125 44.890625 \nQ 49.859375 40.875 45.40625 35.40625 \nQ 44.1875 33.984375 37.640625 27.21875 \nQ 31.109375 20.453125 19.1875 8.296875 \nz\n\" id=\"DejaVuSans-50\"/>\n       <path d=\"M 31.78125 66.40625 \nQ 24.171875 66.40625 20.328125 58.90625 \nQ 16.5 51.421875 16.5 36.375 \nQ 16.5 21.390625 20.328125 13.890625 \nQ 24.171875 6.390625 31.78125 6.390625 \nQ 39.453125 6.390625 43.28125 13.890625 \nQ 47.125 21.390625 47.125 36.375 \nQ 47.125 51.421875 43.28125 58.90625 \nQ 39.453125 66.40625 31.78125 66.40625 \nz\nM 31.78125 74.21875 \nQ 44.046875 74.21875 50.515625 64.515625 \nQ 56.984375 54.828125 56.984375 36.375 \nQ 56.984375 17.96875 50.515625 8.265625 \nQ 44.046875 -1.421875 31.78125 -1.421875 \nQ 19.53125 -1.421875 13.0625 8.265625 \nQ 6.59375 17.96875 6.59375 36.375 \nQ 6.59375 54.828125 13.0625 64.515625 \nQ 19.53125 74.21875 31.78125 74.21875 \nz\n\" id=\"DejaVuSans-48\"/>\n       <path d=\"M 4.890625 31.390625 \nL 31.203125 31.390625 \nL 31.203125 23.390625 \nL 4.890625 23.390625 \nz\n\" id=\"DejaVuSans-45\"/>\n       <path d=\"M 12.40625 8.296875 \nL 28.515625 8.296875 \nL 28.515625 63.921875 \nL 10.984375 60.40625 \nL 10.984375 69.390625 \nL 28.421875 72.90625 \nL 38.28125 72.90625 \nL 38.28125 8.296875 \nL 54.390625 8.296875 \nL 54.390625 0 \nL 12.40625 0 \nz\n\" id=\"DejaVuSans-49\"/>\n       <path d=\"M 10.796875 72.90625 \nL 49.515625 72.90625 \nL 49.515625 64.59375 \nL 19.828125 64.59375 \nL 19.828125 46.734375 \nQ 21.96875 47.46875 24.109375 47.828125 \nQ 26.265625 48.1875 28.421875 48.1875 \nQ 40.625 48.1875 47.75 41.5 \nQ 54.890625 34.8125 54.890625 23.390625 \nQ 54.890625 11.625 47.5625 5.09375 \nQ 40.234375 -1.421875 26.90625 -1.421875 \nQ 22.3125 -1.421875 17.546875 -0.640625 \nQ 12.796875 0.140625 7.71875 1.703125 \nL 7.71875 11.625 \nQ 12.109375 9.234375 16.796875 8.0625 \nQ 21.484375 6.890625 26.703125 6.890625 \nQ 35.15625 6.890625 40.078125 11.328125 \nQ 45.015625 15.765625 45.015625 23.390625 \nQ 45.015625 31 40.078125 35.4375 \nQ 35.15625 39.890625 26.703125 39.890625 \nQ 22.75 39.890625 18.8125 39.015625 \nQ 14.890625 38.140625 10.796875 36.28125 \nz\n\" id=\"DejaVuSans-53\"/>\n      </defs>\n      <g transform=\"translate(59.236919 394.488826)rotate(-60)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"254.492188\" xlink:href=\"#DejaVuSans-45\"/>\n       <use x=\"290.576172\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"354.199219\" xlink:href=\"#DejaVuSans-49\"/>\n       <use x=\"417.822266\" xlink:href=\"#DejaVuSans-45\"/>\n       <use x=\"453.90625\" xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"517.529297\" xlink:href=\"#DejaVuSans-53\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"xtick_2\">\n     <g id=\"line2d_2\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"184.103409\" xlink:href=\"#m2fec3d20ee\" y=\"333.36\"/>\n      </g>\n     </g>\n     <g id=\"text_2\">\n      <!-- 2020-02-04 -->\n      <defs>\n       <path d=\"M 37.796875 64.3125 \nL 12.890625 25.390625 \nL 37.796875 25.390625 \nz\nM 35.203125 72.90625 \nL 47.609375 72.90625 \nL 47.609375 25.390625 \nL 58.015625 25.390625 \nL 58.015625 17.1875 \nL 47.609375 17.1875 \nL 47.609375 0 \nL 37.796875 0 \nL 37.796875 17.1875 \nL 4.890625 17.1875 \nL 4.890625 26.703125 \nz\n\" id=\"DejaVuSans-52\"/>\n      </defs>\n      <g transform=\"translate(171.964192 394.488826)rotate(-60)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"254.492188\" xlink:href=\"#DejaVuSans-45\"/>\n       <use x=\"290.576172\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"354.199219\" xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"417.822266\" xlink:href=\"#DejaVuSans-45\"/>\n       <use x=\"453.90625\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"517.529297\" xlink:href=\"#DejaVuSans-52\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"xtick_3\">\n     <g id=\"line2d_3\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"296.830682\" xlink:href=\"#m2fec3d20ee\" y=\"333.36\"/>\n      </g>\n     </g>\n     <g id=\"text_3\">\n      <!-- 2020-02-14 -->\n      <g transform=\"translate(284.691464 394.488826)rotate(-60)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"254.492188\" xlink:href=\"#DejaVuSans-45\"/>\n       <use x=\"290.576172\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"354.199219\" xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"417.822266\" xlink:href=\"#DejaVuSans-45\"/>\n       <use x=\"453.90625\" xlink:href=\"#DejaVuSans-49\"/>\n       <use x=\"517.529297\" xlink:href=\"#DejaVuSans-52\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"xtick_4\">\n     <g id=\"line2d_4\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"409.557955\" xlink:href=\"#m2fec3d20ee\" y=\"333.36\"/>\n      </g>\n     </g>\n     <g id=\"text_4\">\n      <!-- 2020-02-24 -->\n      <g transform=\"translate(397.418737 394.488826)rotate(-60)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"254.492188\" xlink:href=\"#DejaVuSans-45\"/>\n       <use x=\"290.576172\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"354.199219\" xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"417.822266\" xlink:href=\"#DejaVuSans-45\"/>\n       <use x=\"453.90625\" xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"517.529297\" xlink:href=\"#DejaVuSans-52\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"xtick_5\">\n     <g id=\"line2d_5\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"522.285227\" xlink:href=\"#m2fec3d20ee\" y=\"333.36\"/>\n      </g>\n     </g>\n     <g id=\"text_5\">\n      <!-- 2020-03-05 -->\n      <defs>\n       <path d=\"M 40.578125 39.3125 \nQ 47.65625 37.796875 51.625 33 \nQ 55.609375 28.21875 55.609375 21.1875 \nQ 55.609375 10.40625 48.1875 4.484375 \nQ 40.765625 -1.421875 27.09375 -1.421875 \nQ 22.515625 -1.421875 17.65625 -0.515625 \nQ 12.796875 0.390625 7.625 2.203125 \nL 7.625 11.71875 \nQ 11.71875 9.328125 16.59375 8.109375 \nQ 21.484375 6.890625 26.8125 6.890625 \nQ 36.078125 6.890625 40.9375 10.546875 \nQ 45.796875 14.203125 45.796875 21.1875 \nQ 45.796875 27.640625 41.28125 31.265625 \nQ 36.765625 34.90625 28.71875 34.90625 \nL 20.21875 34.90625 \nL 20.21875 43.015625 \nL 29.109375 43.015625 \nQ 36.375 43.015625 40.234375 45.921875 \nQ 44.09375 48.828125 44.09375 54.296875 \nQ 44.09375 59.90625 40.109375 62.90625 \nQ 36.140625 65.921875 28.71875 65.921875 \nQ 24.65625 65.921875 20.015625 65.03125 \nQ 15.375 64.15625 9.8125 62.3125 \nL 9.8125 71.09375 \nQ 15.4375 72.65625 20.34375 73.4375 \nQ 25.25 74.21875 29.59375 74.21875 \nQ 40.828125 74.21875 47.359375 69.109375 \nQ 53.90625 64.015625 53.90625 55.328125 \nQ 53.90625 49.265625 50.4375 45.09375 \nQ 46.96875 40.921875 40.578125 39.3125 \nz\n\" id=\"DejaVuSans-51\"/>\n      </defs>\n      <g transform=\"translate(510.14601 394.488826)rotate(-60)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"254.492188\" xlink:href=\"#DejaVuSans-45\"/>\n       <use x=\"290.576172\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"354.199219\" xlink:href=\"#DejaVuSans-51\"/>\n       <use x=\"417.822266\" xlink:href=\"#DejaVuSans-45\"/>\n       <use x=\"453.90625\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"517.529297\" xlink:href=\"#DejaVuSans-53\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"text_6\">\n     <!-- date -->\n     <defs>\n      <path d=\"M 45.40625 46.390625 \nL 45.40625 75.984375 \nL 54.390625 75.984375 \nL 54.390625 0 \nL 45.40625 0 \nL 45.40625 8.203125 \nQ 42.578125 3.328125 38.25 0.953125 \nQ 33.9375 -1.421875 27.875 -1.421875 \nQ 17.96875 -1.421875 11.734375 6.484375 \nQ 5.515625 14.40625 5.515625 27.296875 \nQ 5.515625 40.1875 11.734375 48.09375 \nQ 17.96875 56 27.875 56 \nQ 33.9375 56 38.25 53.625 \nQ 42.578125 51.265625 45.40625 46.390625 \nz\nM 14.796875 27.296875 \nQ 14.796875 17.390625 18.875 11.75 \nQ 22.953125 6.109375 30.078125 6.109375 \nQ 37.203125 6.109375 41.296875 11.75 \nQ 45.40625 17.390625 45.40625 27.296875 \nQ 45.40625 37.203125 41.296875 42.84375 \nQ 37.203125 48.484375 30.078125 48.484375 \nQ 22.953125 48.484375 18.875 42.84375 \nQ 14.796875 37.203125 14.796875 27.296875 \nz\n\" id=\"DejaVuSans-100\"/>\n      <path d=\"M 34.28125 27.484375 \nQ 23.390625 27.484375 19.1875 25 \nQ 14.984375 22.515625 14.984375 16.5 \nQ 14.984375 11.71875 18.140625 8.90625 \nQ 21.296875 6.109375 26.703125 6.109375 \nQ 34.1875 6.109375 38.703125 11.40625 \nQ 43.21875 16.703125 43.21875 25.484375 \nL 43.21875 27.484375 \nz\nM 52.203125 31.203125 \nL 52.203125 0 \nL 43.21875 0 \nL 43.21875 8.296875 \nQ 40.140625 3.328125 35.546875 0.953125 \nQ 30.953125 -1.421875 24.3125 -1.421875 \nQ 15.921875 -1.421875 10.953125 3.296875 \nQ 6 8.015625 6 15.921875 \nQ 6 25.140625 12.171875 29.828125 \nQ 18.359375 34.515625 30.609375 34.515625 \nL 43.21875 34.515625 \nL 43.21875 35.40625 \nQ 43.21875 41.609375 39.140625 45 \nQ 35.0625 48.390625 27.6875 48.390625 \nQ 23 48.390625 18.546875 47.265625 \nQ 14.109375 46.140625 10.015625 43.890625 \nL 10.015625 52.203125 \nQ 14.9375 54.109375 19.578125 55.046875 \nQ 24.21875 56 28.609375 56 \nQ 40.484375 56 46.34375 49.84375 \nQ 52.203125 43.703125 52.203125 31.203125 \nz\n\" id=\"DejaVuSans-97\"/>\n      <path d=\"M 18.3125 70.21875 \nL 18.3125 54.6875 \nL 36.8125 54.6875 \nL 36.8125 47.703125 \nL 18.3125 47.703125 \nL 18.3125 18.015625 \nQ 18.3125 11.328125 20.140625 9.421875 \nQ 21.96875 7.515625 27.59375 7.515625 \nL 36.8125 7.515625 \nL 36.8125 0 \nL 27.59375 0 \nQ 17.1875 0 13.234375 3.875 \nQ 9.28125 7.765625 9.28125 18.015625 \nL 9.28125 47.703125 \nL 2.6875 47.703125 \nL 2.6875 54.6875 \nL 9.28125 54.6875 \nL 9.28125 70.21875 \nz\n\" id=\"DejaVuSans-116\"/>\n      <path d=\"M 56.203125 29.59375 \nL 56.203125 25.203125 \nL 14.890625 25.203125 \nQ 15.484375 15.921875 20.484375 11.0625 \nQ 25.484375 6.203125 34.421875 6.203125 \nQ 39.59375 6.203125 44.453125 7.46875 \nQ 49.3125 8.734375 54.109375 11.28125 \nL 54.109375 2.78125 \nQ 49.265625 0.734375 44.1875 -0.34375 \nQ 39.109375 -1.421875 33.890625 -1.421875 \nQ 20.796875 -1.421875 13.15625 6.1875 \nQ 5.515625 13.8125 5.515625 26.8125 \nQ 5.515625 40.234375 12.765625 48.109375 \nQ 20.015625 56 32.328125 56 \nQ 43.359375 56 49.78125 48.890625 \nQ 56.203125 41.796875 56.203125 29.59375 \nz\nM 47.21875 32.234375 \nQ 47.125 39.59375 43.09375 43.984375 \nQ 39.0625 48.390625 32.421875 48.390625 \nQ 24.90625 48.390625 20.390625 44.140625 \nQ 15.875 39.890625 15.1875 32.171875 \nz\n\" id=\"DejaVuSans-101\"/>\n     </defs>\n     <g transform=\"translate(313.7375 407.127108)scale(0.1 -0.1)\">\n      <use xlink:href=\"#DejaVuSans-100\"/>\n      <use x=\"63.476562\" xlink:href=\"#DejaVuSans-97\"/>\n      <use x=\"124.755859\" xlink:href=\"#DejaVuSans-116\"/>\n      <use x=\"163.964844\" xlink:href=\"#DejaVuSans-101\"/>\n     </g>\n    </g>\n   </g>\n   <g id=\"matplotlib.axis_2\">\n    <g id=\"ytick_1\">\n     <g id=\"line2d_6\">\n      <defs>\n       <path d=\"M 0 0 \nL -3.5 0 \n\" id=\"mb43fd64d55\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n      </defs>\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"46.0125\" xlink:href=\"#mb43fd64d55\" y=\"318.573691\"/>\n      </g>\n     </g>\n     <g id=\"text_7\">\n      <!-- 0 -->\n      <g transform=\"translate(32.65 322.37291)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_2\">\n     <g id=\"line2d_7\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"46.0125\" xlink:href=\"#mb43fd64d55\" y=\"279.427993\"/>\n      </g>\n     </g>\n     <g id=\"text_8\">\n      <!-- 2000 -->\n      <g transform=\"translate(13.5625 283.227212)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_3\">\n     <g id=\"line2d_8\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"46.0125\" xlink:href=\"#mb43fd64d55\" y=\"240.282295\"/>\n      </g>\n     </g>\n     <g id=\"text_9\">\n      <!-- 4000 -->\n      <g transform=\"translate(13.5625 244.081514)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-52\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_4\">\n     <g id=\"line2d_9\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"46.0125\" xlink:href=\"#mb43fd64d55\" y=\"201.136597\"/>\n      </g>\n     </g>\n     <g id=\"text_10\">\n      <!-- 6000 -->\n      <defs>\n       <path d=\"M 33.015625 40.375 \nQ 26.375 40.375 22.484375 35.828125 \nQ 18.609375 31.296875 18.609375 23.390625 \nQ 18.609375 15.53125 22.484375 10.953125 \nQ 26.375 6.390625 33.015625 6.390625 \nQ 39.65625 6.390625 43.53125 10.953125 \nQ 47.40625 15.53125 47.40625 23.390625 \nQ 47.40625 31.296875 43.53125 35.828125 \nQ 39.65625 40.375 33.015625 40.375 \nz\nM 52.59375 71.296875 \nL 52.59375 62.3125 \nQ 48.875 64.0625 45.09375 64.984375 \nQ 41.3125 65.921875 37.59375 65.921875 \nQ 27.828125 65.921875 22.671875 59.328125 \nQ 17.53125 52.734375 16.796875 39.40625 \nQ 19.671875 43.65625 24.015625 45.921875 \nQ 28.375 48.1875 33.59375 48.1875 \nQ 44.578125 48.1875 50.953125 41.515625 \nQ 57.328125 34.859375 57.328125 23.390625 \nQ 57.328125 12.15625 50.6875 5.359375 \nQ 44.046875 -1.421875 33.015625 -1.421875 \nQ 20.359375 -1.421875 13.671875 8.265625 \nQ 6.984375 17.96875 6.984375 36.375 \nQ 6.984375 53.65625 15.1875 63.9375 \nQ 23.390625 74.21875 37.203125 74.21875 \nQ 40.921875 74.21875 44.703125 73.484375 \nQ 48.484375 72.75 52.59375 71.296875 \nz\n\" id=\"DejaVuSans-54\"/>\n      </defs>\n      <g transform=\"translate(13.5625 204.935815)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-54\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_5\">\n     <g id=\"line2d_10\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"46.0125\" xlink:href=\"#mb43fd64d55\" y=\"161.990898\"/>\n      </g>\n     </g>\n     <g id=\"text_11\">\n      <!-- 8000 -->\n      <defs>\n       <path d=\"M 31.78125 34.625 \nQ 24.75 34.625 20.71875 30.859375 \nQ 16.703125 27.09375 16.703125 20.515625 \nQ 16.703125 13.921875 20.71875 10.15625 \nQ 24.75 6.390625 31.78125 6.390625 \nQ 38.8125 6.390625 42.859375 10.171875 \nQ 46.921875 13.96875 46.921875 20.515625 \nQ 46.921875 27.09375 42.890625 30.859375 \nQ 38.875 34.625 31.78125 34.625 \nz\nM 21.921875 38.8125 \nQ 15.578125 40.375 12.03125 44.71875 \nQ 8.5 49.078125 8.5 55.328125 \nQ 8.5 64.0625 14.71875 69.140625 \nQ 20.953125 74.21875 31.78125 74.21875 \nQ 42.671875 74.21875 48.875 69.140625 \nQ 55.078125 64.0625 55.078125 55.328125 \nQ 55.078125 49.078125 51.53125 44.71875 \nQ 48 40.375 41.703125 38.8125 \nQ 48.828125 37.15625 52.796875 32.3125 \nQ 56.78125 27.484375 56.78125 20.515625 \nQ 56.78125 9.90625 50.3125 4.234375 \nQ 43.84375 -1.421875 31.78125 -1.421875 \nQ 19.734375 -1.421875 13.25 4.234375 \nQ 6.78125 9.90625 6.78125 20.515625 \nQ 6.78125 27.484375 10.78125 32.3125 \nQ 14.796875 37.15625 21.921875 38.8125 \nz\nM 18.3125 54.390625 \nQ 18.3125 48.734375 21.84375 45.5625 \nQ 25.390625 42.390625 31.78125 42.390625 \nQ 38.140625 42.390625 41.71875 45.5625 \nQ 45.3125 48.734375 45.3125 54.390625 \nQ 45.3125 60.0625 41.71875 63.234375 \nQ 38.140625 66.40625 31.78125 66.40625 \nQ 25.390625 66.40625 21.84375 63.234375 \nQ 18.3125 60.0625 18.3125 54.390625 \nz\n\" id=\"DejaVuSans-56\"/>\n      </defs>\n      <g transform=\"translate(13.5625 165.790117)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-56\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_6\">\n     <g id=\"line2d_11\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"46.0125\" xlink:href=\"#mb43fd64d55\" y=\"122.8452\"/>\n      </g>\n     </g>\n     <g id=\"text_12\">\n      <!-- 10000 -->\n      <g transform=\"translate(7.2 126.644419)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-49\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"254.492188\" xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_7\">\n     <g id=\"line2d_12\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"46.0125\" xlink:href=\"#mb43fd64d55\" y=\"83.699502\"/>\n      </g>\n     </g>\n     <g id=\"text_13\">\n      <!-- 12000 -->\n      <g transform=\"translate(7.2 87.498721)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-49\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"254.492188\" xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_8\">\n     <g id=\"line2d_13\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"46.0125\" xlink:href=\"#mb43fd64d55\" y=\"44.553804\"/>\n      </g>\n     </g>\n     <g id=\"text_14\">\n      <!-- 14000 -->\n      <g transform=\"translate(7.2 48.353023)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-49\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-52\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"190.869141\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"254.492188\" xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n   </g>\n   <g id=\"line2d_14\">\n    <path clip-path=\"url(#pc84ea808ad)\" d=\"M 71.376136 309.628899 \nL 82.648864 305.107571 \nL 93.921591 303.52217 \nL 105.194318 283.910175 \nL 116.467045 290.016904 \nL 127.739773 284.575652 \nL 139.0125 279.799877 \nL 150.285227 277.490281 \nL 161.557955 267.899585 \nL 172.830682 263.280392 \nL 184.103409 255.29467 \nL 195.376136 242.5136 \nL 206.648864 246.271587 \nL 217.921591 257.056226 \nL 229.194318 252.319597 \nL 240.467045 266.666495 \nL 251.739773 260.383611 \nL 263.0125 270.287472 \nL 274.285227 279.1344 \nL 285.557955 22.025455 \nL 296.830682 239.362371 \nL 308.103409 266.881797 \nL 319.376136 279.27141 \nL 330.648864 278.488496 \nL 341.921591 281.620152 \nL 353.194318 284.340778 \nL 364.467045 310.920707 \nL 375.739773 301.173428 \nL 387.0125 302.465236 \nL 398.285227 305.890485 \nL 409.557955 314.385101 \nL 420.830682 308.630684 \nL 432.103409 310.627114 \nL 443.376136 310.098647 \nL 454.648864 312.173369 \nL 465.921591 310.216085 \nL 477.194318 307.358449 \nL 488.467045 314.619976 \nL 499.739773 316.127085 \nL 511.0125 316.244522 \nL 522.285227 315.853065 \nL 533.557955 315.774774 \nL 544.830682 316.635979 \nL 556.103409 317.712486 \nL 567.376136 317.790777 \nL 578.648864 318.201807 \n\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n   </g>\n   <g id=\"line2d_15\">\n    <path clip-path=\"url(#pc84ea808ad)\" d=\"M 71.376136 318.4954 \nL 82.648864 318.35839 \nL 93.921591 318.534545 \nL 105.194318 318.397536 \nL 116.467045 317.732059 \nL 127.739773 318.162661 \nL 139.0125 317.653767 \nL 150.285227 316.85128 \nL 161.557955 317.223165 \nL 172.830682 315.696482 \nL 184.103409 315.500754 \nL 195.376136 313.48475 \nL 206.648864 313.465178 \nL 217.921591 310.998999 \nL 229.194318 308.591538 \nL 240.467045 306.849555 \nL 251.739773 306.203651 \nL 263.0125 304.579104 \nL 274.285227 304.011491 \nL 285.557955 295.653885 \nL 296.830682 302.680538 \nL 308.103409 291.700169 \nL 319.376136 292.678812 \nL 330.648864 290.682381 \nL 341.921591 285.143265 \nL 353.194318 282.872814 \nL 364.467045 283.753593 \nL 375.739773 277.294552 \nL 387.0125 271.696718 \nL 398.285227 274.945811 \nL 409.557955 282.442212 \nL 420.830682 267.899585 \nL 432.103409 271.168251 \nL 443.376136 264.748356 \nL 454.648864 247.680832 \nL 465.921591 262.106022 \nL 477.194318 267.234108 \nL 488.467045 263.045518 \nL 499.739773 264.904939 \nL 511.0125 266.666495 \nL 522.285227 275.728724 \nL 533.557955 285.671732 \nL 544.830682 285.73045 \nL 556.103409 286.063189 \nL 567.376136 288.529368 \nL 578.648864 293.187706 \n\" style=\"fill:none;stroke:#ff7f0e;stroke-linecap:square;stroke-width:1.5;\"/>\n   </g>\n   <g id=\"line2d_16\">\n    <path clip-path=\"url(#pc84ea808ad)\" d=\"M 71.376136 318.260526 \nL 82.648864 318.280098 \nL 93.921591 318.103943 \nL 105.194318 318.064797 \nL 116.467045 318.064797 \nL 127.739773 317.829923 \nL 139.0125 317.732059 \nL 150.285227 317.986506 \nL 161.557955 317.379747 \nL 172.830682 317.458039 \nL 184.103409 317.321029 \nL 195.376136 317.301456 \nL 206.648864 317.144873 \nL 217.921591 317.144873 \nL 229.194318 316.890426 \nL 240.467045 316.831708 \nL 251.739773 316.675125 \nL 263.0125 316.459823 \nL 274.285227 316.675125 \nL 285.557955 313.602187 \nL 296.830682 318.319244 \nL 308.103409 315.774774 \nL 319.376136 315.794347 \nL 330.648864 316.518542 \nL 341.921591 316.655552 \nL 353.194318 315.911784 \nL 364.467045 316.342386 \nL 375.739773 316.264095 \nL 387.0125 316.440251 \nL 398.285227 316.675125 \nL 409.557955 315.637764 \nL 420.830682 317.184019 \nL 432.103409 317.555903 \nL 443.376136 318.006079 \nL 454.648864 317.712486 \nL 465.921591 317.653767 \nL 477.194318 317.888641 \nL 488.467045 317.751631 \nL 499.739773 317.966933 \nL 511.0125 317.829923 \nL 522.285227 317.966933 \nL 533.557955 317.986506 \nL 544.830682 318.025651 \nL 556.103409 318.045224 \nL 567.376136 318.143088 \nL 578.648864 318.240953 \n\" style=\"fill:none;stroke:#2ca02c;stroke-linecap:square;stroke-width:1.5;\"/>\n   </g>\n   <g id=\"patch_3\">\n    <path d=\"M 46.0125 333.36 \nL 46.0125 7.2 \n\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n   </g>\n   <g id=\"patch_4\">\n    <path d=\"M 604.0125 333.36 \nL 604.0125 7.2 \n\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n   </g>\n   <g id=\"patch_5\">\n    <path d=\"M 46.0125 333.36 \nL 604.0125 333.36 \n\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n   </g>\n   <g id=\"patch_6\">\n    <path d=\"M 46.0125 7.2 \nL 604.0125 7.2 \n\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n   </g>\n   <g id=\"legend_1\">\n    <g id=\"patch_7\">\n     <path d=\"M 487.165625 60.06875 \nL 597.0125 60.06875 \nQ 599.0125 60.06875 599.0125 58.06875 \nL 599.0125 14.2 \nQ 599.0125 12.2 597.0125 12.2 \nL 487.165625 12.2 \nQ 485.165625 12.2 485.165625 14.2 \nL 485.165625 58.06875 \nQ 485.165625 60.06875 487.165625 60.06875 \nz\n\" style=\"fill:#ffffff;opacity:0.8;stroke:#cccccc;stroke-linejoin:miter;\"/>\n    </g>\n    <g id=\"line2d_17\">\n     <path d=\"M 489.165625 20.298438 \nL 509.165625 20.298438 \n\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n    </g>\n    <g id=\"line2d_18\"/>\n    <g id=\"text_15\">\n     <!-- confirmed_num -->\n     <defs>\n      <path d=\"M 48.78125 52.59375 \nL 48.78125 44.1875 \nQ 44.96875 46.296875 41.140625 47.34375 \nQ 37.3125 48.390625 33.40625 48.390625 \nQ 24.65625 48.390625 19.8125 42.84375 \nQ 14.984375 37.3125 14.984375 27.296875 \nQ 14.984375 17.28125 19.8125 11.734375 \nQ 24.65625 6.203125 33.40625 6.203125 \nQ 37.3125 6.203125 41.140625 7.25 \nQ 44.96875 8.296875 48.78125 10.40625 \nL 48.78125 2.09375 \nQ 45.015625 0.34375 40.984375 -0.53125 \nQ 36.96875 -1.421875 32.421875 -1.421875 \nQ 20.0625 -1.421875 12.78125 6.34375 \nQ 5.515625 14.109375 5.515625 27.296875 \nQ 5.515625 40.671875 12.859375 48.328125 \nQ 20.21875 56 33.015625 56 \nQ 37.15625 56 41.109375 55.140625 \nQ 45.0625 54.296875 48.78125 52.59375 \nz\n\" id=\"DejaVuSans-99\"/>\n      <path d=\"M 30.609375 48.390625 \nQ 23.390625 48.390625 19.1875 42.75 \nQ 14.984375 37.109375 14.984375 27.296875 \nQ 14.984375 17.484375 19.15625 11.84375 \nQ 23.34375 6.203125 30.609375 6.203125 \nQ 37.796875 6.203125 41.984375 11.859375 \nQ 46.1875 17.53125 46.1875 27.296875 \nQ 46.1875 37.015625 41.984375 42.703125 \nQ 37.796875 48.390625 30.609375 48.390625 \nz\nM 30.609375 56 \nQ 42.328125 56 49.015625 48.375 \nQ 55.71875 40.765625 55.71875 27.296875 \nQ 55.71875 13.875 49.015625 6.21875 \nQ 42.328125 -1.421875 30.609375 -1.421875 \nQ 18.84375 -1.421875 12.171875 6.21875 \nQ 5.515625 13.875 5.515625 27.296875 \nQ 5.515625 40.765625 12.171875 48.375 \nQ 18.84375 56 30.609375 56 \nz\n\" id=\"DejaVuSans-111\"/>\n      <path d=\"M 54.890625 33.015625 \nL 54.890625 0 \nL 45.90625 0 \nL 45.90625 32.71875 \nQ 45.90625 40.484375 42.875 44.328125 \nQ 39.84375 48.1875 33.796875 48.1875 \nQ 26.515625 48.1875 22.3125 43.546875 \nQ 18.109375 38.921875 18.109375 30.90625 \nL 18.109375 0 \nL 9.078125 0 \nL 9.078125 54.6875 \nL 18.109375 54.6875 \nL 18.109375 46.1875 \nQ 21.34375 51.125 25.703125 53.5625 \nQ 30.078125 56 35.796875 56 \nQ 45.21875 56 50.046875 50.171875 \nQ 54.890625 44.34375 54.890625 33.015625 \nz\n\" id=\"DejaVuSans-110\"/>\n      <path d=\"M 37.109375 75.984375 \nL 37.109375 68.5 \nL 28.515625 68.5 \nQ 23.6875 68.5 21.796875 66.546875 \nQ 19.921875 64.59375 19.921875 59.515625 \nL 19.921875 54.6875 \nL 34.71875 54.6875 \nL 34.71875 47.703125 \nL 19.921875 47.703125 \nL 19.921875 0 \nL 10.890625 0 \nL 10.890625 47.703125 \nL 2.296875 47.703125 \nL 2.296875 54.6875 \nL 10.890625 54.6875 \nL 10.890625 58.5 \nQ 10.890625 67.625 15.140625 71.796875 \nQ 19.390625 75.984375 28.609375 75.984375 \nz\n\" id=\"DejaVuSans-102\"/>\n      <path d=\"M 9.421875 54.6875 \nL 18.40625 54.6875 \nL 18.40625 0 \nL 9.421875 0 \nz\nM 9.421875 75.984375 \nL 18.40625 75.984375 \nL 18.40625 64.59375 \nL 9.421875 64.59375 \nz\n\" id=\"DejaVuSans-105\"/>\n      <path d=\"M 41.109375 46.296875 \nQ 39.59375 47.171875 37.8125 47.578125 \nQ 36.03125 48 33.890625 48 \nQ 26.265625 48 22.1875 43.046875 \nQ 18.109375 38.09375 18.109375 28.8125 \nL 18.109375 0 \nL 9.078125 0 \nL 9.078125 54.6875 \nL 18.109375 54.6875 \nL 18.109375 46.1875 \nQ 20.953125 51.171875 25.484375 53.578125 \nQ 30.03125 56 36.53125 56 \nQ 37.453125 56 38.578125 55.875 \nQ 39.703125 55.765625 41.0625 55.515625 \nz\n\" id=\"DejaVuSans-114\"/>\n      <path d=\"M 52 44.1875 \nQ 55.375 50.25 60.0625 53.125 \nQ 64.75 56 71.09375 56 \nQ 79.640625 56 84.28125 50.015625 \nQ 88.921875 44.046875 88.921875 33.015625 \nL 88.921875 0 \nL 79.890625 0 \nL 79.890625 32.71875 \nQ 79.890625 40.578125 77.09375 44.375 \nQ 74.3125 48.1875 68.609375 48.1875 \nQ 61.625 48.1875 57.5625 43.546875 \nQ 53.515625 38.921875 53.515625 30.90625 \nL 53.515625 0 \nL 44.484375 0 \nL 44.484375 32.71875 \nQ 44.484375 40.625 41.703125 44.40625 \nQ 38.921875 48.1875 33.109375 48.1875 \nQ 26.21875 48.1875 22.15625 43.53125 \nQ 18.109375 38.875 18.109375 30.90625 \nL 18.109375 0 \nL 9.078125 0 \nL 9.078125 54.6875 \nL 18.109375 54.6875 \nL 18.109375 46.1875 \nQ 21.1875 51.21875 25.484375 53.609375 \nQ 29.78125 56 35.6875 56 \nQ 41.65625 56 45.828125 52.96875 \nQ 50 49.953125 52 44.1875 \nz\n\" id=\"DejaVuSans-109\"/>\n      <path d=\"M 50.984375 -16.609375 \nL 50.984375 -23.578125 \nL -0.984375 -23.578125 \nL -0.984375 -16.609375 \nz\n\" id=\"DejaVuSans-95\"/>\n      <path d=\"M 8.5 21.578125 \nL 8.5 54.6875 \nL 17.484375 54.6875 \nL 17.484375 21.921875 \nQ 17.484375 14.15625 20.5 10.265625 \nQ 23.53125 6.390625 29.59375 6.390625 \nQ 36.859375 6.390625 41.078125 11.03125 \nQ 45.3125 15.671875 45.3125 23.6875 \nL 45.3125 54.6875 \nL 54.296875 54.6875 \nL 54.296875 0 \nL 45.3125 0 \nL 45.3125 8.40625 \nQ 42.046875 3.421875 37.71875 1 \nQ 33.40625 -1.421875 27.6875 -1.421875 \nQ 18.265625 -1.421875 13.375 4.4375 \nQ 8.5 10.296875 8.5 21.578125 \nz\nM 31.109375 56 \nz\n\" id=\"DejaVuSans-117\"/>\n     </defs>\n     <g transform=\"translate(517.165625 23.798438)scale(0.1 -0.1)\">\n      <use xlink:href=\"#DejaVuSans-99\"/>\n      <use x=\"54.980469\" xlink:href=\"#DejaVuSans-111\"/>\n      <use x=\"116.162109\" xlink:href=\"#DejaVuSans-110\"/>\n      <use x=\"179.541016\" xlink:href=\"#DejaVuSans-102\"/>\n      <use x=\"214.746094\" xlink:href=\"#DejaVuSans-105\"/>\n      <use x=\"242.529297\" xlink:href=\"#DejaVuSans-114\"/>\n      <use x=\"281.892578\" xlink:href=\"#DejaVuSans-109\"/>\n      <use x=\"379.304688\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"440.828125\" xlink:href=\"#DejaVuSans-100\"/>\n      <use x=\"504.304688\" xlink:href=\"#DejaVuSans-95\"/>\n      <use x=\"554.304688\" xlink:href=\"#DejaVuSans-110\"/>\n      <use x=\"617.683594\" xlink:href=\"#DejaVuSans-117\"/>\n      <use x=\"681.0625\" xlink:href=\"#DejaVuSans-109\"/>\n     </g>\n    </g>\n    <g id=\"line2d_19\">\n     <path d=\"M 489.165625 35.254688 \nL 509.165625 35.254688 \n\" style=\"fill:none;stroke:#ff7f0e;stroke-linecap:square;stroke-width:1.5;\"/>\n    </g>\n    <g id=\"line2d_20\"/>\n    <g id=\"text_16\">\n     <!-- cured_num -->\n     <g transform=\"translate(517.165625 38.754688)scale(0.1 -0.1)\">\n      <use xlink:href=\"#DejaVuSans-99\"/>\n      <use x=\"54.980469\" xlink:href=\"#DejaVuSans-117\"/>\n      <use x=\"118.359375\" xlink:href=\"#DejaVuSans-114\"/>\n      <use x=\"157.222656\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"218.746094\" xlink:href=\"#DejaVuSans-100\"/>\n      <use x=\"282.222656\" xlink:href=\"#DejaVuSans-95\"/>\n      <use x=\"332.222656\" xlink:href=\"#DejaVuSans-110\"/>\n      <use x=\"395.601562\" xlink:href=\"#DejaVuSans-117\"/>\n      <use x=\"458.980469\" xlink:href=\"#DejaVuSans-109\"/>\n     </g>\n    </g>\n    <g id=\"line2d_21\">\n     <path d=\"M 489.165625 50.210938 \nL 509.165625 50.210938 \n\" style=\"fill:none;stroke:#2ca02c;stroke-linecap:square;stroke-width:1.5;\"/>\n    </g>\n    <g id=\"line2d_22\"/>\n    <g id=\"text_17\">\n     <!-- dead_num -->\n     <g transform=\"translate(517.165625 53.710938)scale(0.1 -0.1)\">\n      <use xlink:href=\"#DejaVuSans-100\"/>\n      <use x=\"63.476562\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"125\" xlink:href=\"#DejaVuSans-97\"/>\n      <use x=\"186.279297\" xlink:href=\"#DejaVuSans-100\"/>\n      <use x=\"249.755859\" xlink:href=\"#DejaVuSans-95\"/>\n      <use x=\"299.755859\" xlink:href=\"#DejaVuSans-110\"/>\n      <use x=\"363.134766\" xlink:href=\"#DejaVuSans-117\"/>\n      <use x=\"426.513672\" xlink:href=\"#DejaVuSans-109\"/>\n     </g>\n    </g>\n   </g>\n  </g>\n </g>\n <defs>\n  <clipPath id=\"pc84ea808ad\">\n   <rect height=\"326.16\" width=\"558\" x=\"46.0125\" y=\"7.2\"/>\n  </clipPath>\n </defs>\n</svg>\n"
          },
          "metadata": {
            "tags": [],
            "needs_background": "light"
          }
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "HXT_rSDfFviA"
      },
      "source": [
        "# 用某日前 8 天窗口数据作为输入预测该日数据\n",
        "WINDOW_SIZE = 8\n",
        "\n",
        "def batch_dataset(dataset):\n",
        "    dataset_batched = dataset.batch(WINDOW_SIZE,drop_remainder=True)\n",
        "    return dataset_batched\n",
        "\n",
        "ds_data = tf.data.Dataset.from_tensor_slices(tf.constant(dfdiff.values,dtype = tf.float32)) \\\n",
        "   .window(WINDOW_SIZE,shift=1).flat_map(batch_dataset)\n",
        "\n",
        "ds_label = tf.data.Dataset.from_tensor_slices(\n",
        "    tf.constant(dfdiff.values[WINDOW_SIZE:],dtype = tf.float32))\n",
        "\n",
        "# 数据较小，可以将全部训练数据放入到一个 Batch 中，提升性能\n",
        "ds_train = tf.data.Dataset.zip((ds_data,ds_label)).batch(38).cache()"
      ],
      "execution_count": 6,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "FrkRp5QeFxpJ"
      },
      "source": [
        "# 定义模型\n",
        "\n",
        "使用Keras接口有以下3种方式构建模型：\n",
        "\n",
        "- 使用Sequential按层顺序构建模型\n",
        "- 使用函数式API构建任意结构模型\n",
        "- 继承Model基类构建自定义模型。\n",
        "\n",
        "此处选择使用函数式API构建任意结构模型。\n",
        "\n"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "TZJg06E_F5YF"
      },
      "source": [
        "# 考虑到新增确诊，新增治愈，新增死亡人数数据不可能小于0，设计如下结构\n",
        "class Block(layers.Layer):\n",
        "    def __init__(self, **kwargs):\n",
        "        super(Block, self).__init__(**kwargs)\n",
        "    \n",
        "    def call(self, x_input,x):\n",
        "        x_out = tf.maximum((1+x)*x_input[:,-1,:],0.0)\n",
        "        return x_out\n",
        "    \n",
        "    def get_config(self):  \n",
        "        config = super(Block, self).get_config()\n",
        "        return config\n"
      ],
      "execution_count": 7,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "H4n3oW9OGB7F",
        "outputId": "001de08a-f07c-47a4-bd7e-aa18daa76703",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 408
        }
      },
      "source": [
        "tf.keras.backend.clear_session()\n",
        "x_input = layers.Input(shape = (None,3),dtype = tf.float32)\n",
        "x = layers.LSTM(3,return_sequences = True,input_shape=(None,3))(x_input)\n",
        "x = layers.LSTM(3,return_sequences = True,input_shape=(None,3))(x)\n",
        "x = layers.LSTM(3,return_sequences = True,input_shape=(None,3))(x)\n",
        "x = layers.LSTM(3,input_shape=(None,3))(x)\n",
        "x = layers.Dense(3)(x)\n",
        "\n",
        "# 考虑到新增确诊，新增治愈，新增死亡人数数据不可能小于0，设计如下结构\n",
        "#x = tf.maximum((1+x)*x_input[:,-1,:],0.0)\n",
        "x = Block()(x_input,x)\n",
        "model = models.Model(inputs = [x_input],outputs = [x])\n",
        "model.summary()"
      ],
      "execution_count": 8,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "Model: \"functional_1\"\n",
            "__________________________________________________________________________________________________\n",
            "Layer (type)                    Output Shape         Param #     Connected to                     \n",
            "==================================================================================================\n",
            "input_1 (InputLayer)            [(None, None, 3)]    0                                            \n",
            "__________________________________________________________________________________________________\n",
            "lstm (LSTM)                     (None, None, 3)      84          input_1[0][0]                    \n",
            "__________________________________________________________________________________________________\n",
            "lstm_1 (LSTM)                   (None, None, 3)      84          lstm[0][0]                       \n",
            "__________________________________________________________________________________________________\n",
            "lstm_2 (LSTM)                   (None, None, 3)      84          lstm_1[0][0]                     \n",
            "__________________________________________________________________________________________________\n",
            "lstm_3 (LSTM)                   (None, 3)            84          lstm_2[0][0]                     \n",
            "__________________________________________________________________________________________________\n",
            "dense (Dense)                   (None, 3)            12          lstm_3[0][0]                     \n",
            "__________________________________________________________________________________________________\n",
            "block (Block)                   (None, 3)            0           input_1[0][0]                    \n",
            "                                                                 dense[0][0]                      \n",
            "==================================================================================================\n",
            "Total params: 348\n",
            "Trainable params: 348\n",
            "Non-trainable params: 0\n",
            "__________________________________________________________________________________________________\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "oOenvZVYGG0n"
      },
      "source": [
        "# 训练模型"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "OioEEpz3GIVi"
      },
      "source": [
        "#自定义损失函数，考虑平方差和预测目标的比值\n",
        "class MSPE(losses.Loss):\n",
        "    def call(self,y_true,y_pred):\n",
        "        err_percent = (y_true - y_pred)**2/(tf.maximum(y_true**2,1e-7))\n",
        "        mean_err_percent = tf.reduce_mean(err_percent)\n",
        "        return mean_err_percent\n",
        "    \n",
        "    def get_config(self):\n",
        "        config = super(MSPE, self).get_config()\n",
        "        return config\n",
        "        \n",
        "import os\n",
        "import datetime\n",
        "\n",
        "optimizer = tf.keras.optimizers.Adam(learning_rate=0.01)\n",
        "model.compile(optimizer=optimizer,loss=MSPE(name = \"MSPE\"))\n",
        "\n",
        "stamp = datetime.datetime.now().strftime(\"%Y%m%d-%H%M%S\")\n",
        "logdir = os.path.join('data', 'autograph', stamp)\n",
        "\n",
        "## 在 Python3 下建议使用 pathlib 修正各操作系统的路径\n",
        "# from pathlib import Path\n",
        "# stamp = datetime.datetime.now().strftime(\"%Y%m%d-%H%M%S\")\n",
        "# logdir = str(Path('./data/autograph/' + stamp))\n",
        "\n",
        "tb_callback = tf.keras.callbacks.TensorBoard(logdir, histogram_freq=1)\n",
        "#如果loss在100个epoch后没有提升，学习率减半。\n",
        "lr_callback = tf.keras.callbacks.ReduceLROnPlateau(monitor=\"loss\",factor = 0.5, patience = 100)\n",
        "#当loss在200个epoch后没有提升，则提前终止训练。\n",
        "stop_callback = tf.keras.callbacks.EarlyStopping(monitor = \"loss\", patience= 200)\n",
        "callbacks_list = [tb_callback,lr_callback,stop_callback]\n",
        "\n",
        "history = model.fit(ds_train,epochs=500,callbacks = callbacks_list)"
      ],
      "execution_count": null,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "q3F3iHDjGQuo"
      },
      "source": [
        "# 评估模型\n",
        "\n",
        "评估模型一般要设置验证集或者测试集，由于此例数据较少，我们仅仅可视化损失函数在训练集上的迭代情况。\n",
        "\n"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "uvC2d_qHGQIu",
        "outputId": "bca3a41e-d716-42b1-fcaf-1a296d324001",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 391
        }
      },
      "source": [
        "%matplotlib inline\n",
        "%config InlineBackend.figure_format = 'svg'\n",
        "\n",
        "import matplotlib.pyplot as plt\n",
        "\n",
        "def plot_metric(history, metric):\n",
        "    train_metrics = history.history[metric]\n",
        "    epochs = range(1, len(train_metrics) + 1)\n",
        "    plt.plot(epochs, train_metrics, 'bo--')\n",
        "    plt.title('Training '+ metric)\n",
        "    plt.xlabel(\"Epochs\")\n",
        "    plt.ylabel(metric)\n",
        "    plt.legend([\"train_\"+metric])\n",
        "    plt.show()\n",
        "\n",
        "plot_metric(history,\"loss\")\n"
      ],
      "execution_count": 10,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 432x288 with 1 Axes>"
            ],
            "image/svg+xml": "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n<!-- Created with matplotlib (https://matplotlib.org/) -->\n<svg height=\"277.314375pt\" version=\"1.1\" viewBox=\"0 0 385.78125 277.314375\" width=\"385.78125pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <defs>\n  <style type=\"text/css\">\n*{stroke-linecap:butt;stroke-linejoin:round;}\n  </style>\n </defs>\n <g id=\"figure_1\">\n  <g id=\"patch_1\">\n   <path d=\"M 0 277.314375 \nL 385.78125 277.314375 \nL 385.78125 0 \nL 0 0 \nz\n\" style=\"fill:none;\"/>\n  </g>\n  <g id=\"axes_1\">\n   <g id=\"patch_2\">\n    <path d=\"M 43.78125 239.758125 \nL 378.58125 239.758125 \nL 378.58125 22.318125 \nL 43.78125 22.318125 \nz\n\" style=\"fill:#ffffff;\"/>\n   </g>\n   <g id=\"matplotlib.axis_1\">\n    <g id=\"xtick_1\">\n     <g id=\"line2d_1\">\n      <defs>\n       <path d=\"M 0 0 \nL 0 3.5 \n\" id=\"m727d3e2902\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n      </defs>\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"58.389485\" xlink:href=\"#m727d3e2902\" y=\"239.758125\"/>\n      </g>\n     </g>\n     <g id=\"text_1\">\n      <!-- 0 -->\n      <defs>\n       <path d=\"M 31.78125 66.40625 \nQ 24.171875 66.40625 20.328125 58.90625 \nQ 16.5 51.421875 16.5 36.375 \nQ 16.5 21.390625 20.328125 13.890625 \nQ 24.171875 6.390625 31.78125 6.390625 \nQ 39.453125 6.390625 43.28125 13.890625 \nQ 47.125 21.390625 47.125 36.375 \nQ 47.125 51.421875 43.28125 58.90625 \nQ 39.453125 66.40625 31.78125 66.40625 \nz\nM 31.78125 74.21875 \nQ 44.046875 74.21875 50.515625 64.515625 \nQ 56.984375 54.828125 56.984375 36.375 \nQ 56.984375 17.96875 50.515625 8.265625 \nQ 44.046875 -1.421875 31.78125 -1.421875 \nQ 19.53125 -1.421875 13.0625 8.265625 \nQ 6.59375 17.96875 6.59375 36.375 \nQ 6.59375 54.828125 13.0625 64.515625 \nQ 19.53125 74.21875 31.78125 74.21875 \nz\n\" id=\"DejaVuSans-48\"/>\n      </defs>\n      <g transform=\"translate(55.208235 254.356562)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"xtick_2\">\n     <g id=\"line2d_2\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"119.384201\" xlink:href=\"#m727d3e2902\" y=\"239.758125\"/>\n      </g>\n     </g>\n     <g id=\"text_2\">\n      <!-- 100 -->\n      <defs>\n       <path d=\"M 12.40625 8.296875 \nL 28.515625 8.296875 \nL 28.515625 63.921875 \nL 10.984375 60.40625 \nL 10.984375 69.390625 \nL 28.421875 72.90625 \nL 38.28125 72.90625 \nL 38.28125 8.296875 \nL 54.390625 8.296875 \nL 54.390625 0 \nL 12.40625 0 \nz\n\" id=\"DejaVuSans-49\"/>\n      </defs>\n      <g transform=\"translate(109.840451 254.356562)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-49\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"xtick_3\">\n     <g id=\"line2d_3\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"180.378918\" xlink:href=\"#m727d3e2902\" y=\"239.758125\"/>\n      </g>\n     </g>\n     <g id=\"text_3\">\n      <!-- 200 -->\n      <defs>\n       <path d=\"M 19.1875 8.296875 \nL 53.609375 8.296875 \nL 53.609375 0 \nL 7.328125 0 \nL 7.328125 8.296875 \nQ 12.9375 14.109375 22.625 23.890625 \nQ 32.328125 33.6875 34.8125 36.53125 \nQ 39.546875 41.84375 41.421875 45.53125 \nQ 43.3125 49.21875 43.3125 52.78125 \nQ 43.3125 58.59375 39.234375 62.25 \nQ 35.15625 65.921875 28.609375 65.921875 \nQ 23.96875 65.921875 18.8125 64.3125 \nQ 13.671875 62.703125 7.8125 59.421875 \nL 7.8125 69.390625 \nQ 13.765625 71.78125 18.9375 73 \nQ 24.125 74.21875 28.421875 74.21875 \nQ 39.75 74.21875 46.484375 68.546875 \nQ 53.21875 62.890625 53.21875 53.421875 \nQ 53.21875 48.921875 51.53125 44.890625 \nQ 49.859375 40.875 45.40625 35.40625 \nQ 44.1875 33.984375 37.640625 27.21875 \nQ 31.109375 20.453125 19.1875 8.296875 \nz\n\" id=\"DejaVuSans-50\"/>\n      </defs>\n      <g transform=\"translate(170.835168 254.356562)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"xtick_4\">\n     <g id=\"line2d_4\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"241.373635\" xlink:href=\"#m727d3e2902\" y=\"239.758125\"/>\n      </g>\n     </g>\n     <g id=\"text_4\">\n      <!-- 300 -->\n      <defs>\n       <path d=\"M 40.578125 39.3125 \nQ 47.65625 37.796875 51.625 33 \nQ 55.609375 28.21875 55.609375 21.1875 \nQ 55.609375 10.40625 48.1875 4.484375 \nQ 40.765625 -1.421875 27.09375 -1.421875 \nQ 22.515625 -1.421875 17.65625 -0.515625 \nQ 12.796875 0.390625 7.625 2.203125 \nL 7.625 11.71875 \nQ 11.71875 9.328125 16.59375 8.109375 \nQ 21.484375 6.890625 26.8125 6.890625 \nQ 36.078125 6.890625 40.9375 10.546875 \nQ 45.796875 14.203125 45.796875 21.1875 \nQ 45.796875 27.640625 41.28125 31.265625 \nQ 36.765625 34.90625 28.71875 34.90625 \nL 20.21875 34.90625 \nL 20.21875 43.015625 \nL 29.109375 43.015625 \nQ 36.375 43.015625 40.234375 45.921875 \nQ 44.09375 48.828125 44.09375 54.296875 \nQ 44.09375 59.90625 40.109375 62.90625 \nQ 36.140625 65.921875 28.71875 65.921875 \nQ 24.65625 65.921875 20.015625 65.03125 \nQ 15.375 64.15625 9.8125 62.3125 \nL 9.8125 71.09375 \nQ 15.4375 72.65625 20.34375 73.4375 \nQ 25.25 74.21875 29.59375 74.21875 \nQ 40.828125 74.21875 47.359375 69.109375 \nQ 53.90625 64.015625 53.90625 55.328125 \nQ 53.90625 49.265625 50.4375 45.09375 \nQ 46.96875 40.921875 40.578125 39.3125 \nz\n\" id=\"DejaVuSans-51\"/>\n      </defs>\n      <g transform=\"translate(231.829885 254.356562)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-51\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"xtick_5\">\n     <g id=\"line2d_5\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"302.368351\" xlink:href=\"#m727d3e2902\" y=\"239.758125\"/>\n      </g>\n     </g>\n     <g id=\"text_5\">\n      <!-- 400 -->\n      <defs>\n       <path d=\"M 37.796875 64.3125 \nL 12.890625 25.390625 \nL 37.796875 25.390625 \nz\nM 35.203125 72.90625 \nL 47.609375 72.90625 \nL 47.609375 25.390625 \nL 58.015625 25.390625 \nL 58.015625 17.1875 \nL 47.609375 17.1875 \nL 47.609375 0 \nL 37.796875 0 \nL 37.796875 17.1875 \nL 4.890625 17.1875 \nL 4.890625 26.703125 \nz\n\" id=\"DejaVuSans-52\"/>\n      </defs>\n      <g transform=\"translate(292.824601 254.356562)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-52\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"xtick_6\">\n     <g id=\"line2d_6\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"363.363068\" xlink:href=\"#m727d3e2902\" y=\"239.758125\"/>\n      </g>\n     </g>\n     <g id=\"text_6\">\n      <!-- 500 -->\n      <defs>\n       <path d=\"M 10.796875 72.90625 \nL 49.515625 72.90625 \nL 49.515625 64.59375 \nL 19.828125 64.59375 \nL 19.828125 46.734375 \nQ 21.96875 47.46875 24.109375 47.828125 \nQ 26.265625 48.1875 28.421875 48.1875 \nQ 40.625 48.1875 47.75 41.5 \nQ 54.890625 34.8125 54.890625 23.390625 \nQ 54.890625 11.625 47.5625 5.09375 \nQ 40.234375 -1.421875 26.90625 -1.421875 \nQ 22.3125 -1.421875 17.546875 -0.640625 \nQ 12.796875 0.140625 7.71875 1.703125 \nL 7.71875 11.625 \nQ 12.109375 9.234375 16.796875 8.0625 \nQ 21.484375 6.890625 26.703125 6.890625 \nQ 35.15625 6.890625 40.078125 11.328125 \nQ 45.015625 15.765625 45.015625 23.390625 \nQ 45.015625 31 40.078125 35.4375 \nQ 35.15625 39.890625 26.703125 39.890625 \nQ 22.75 39.890625 18.8125 39.015625 \nQ 14.890625 38.140625 10.796875 36.28125 \nz\n\" id=\"DejaVuSans-53\"/>\n      </defs>\n      <g transform=\"translate(353.819318 254.356562)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-53\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"text_7\">\n     <!-- Epochs -->\n     <defs>\n      <path d=\"M 9.8125 72.90625 \nL 55.90625 72.90625 \nL 55.90625 64.59375 \nL 19.671875 64.59375 \nL 19.671875 43.015625 \nL 54.390625 43.015625 \nL 54.390625 34.71875 \nL 19.671875 34.71875 \nL 19.671875 8.296875 \nL 56.78125 8.296875 \nL 56.78125 0 \nL 9.8125 0 \nz\n\" id=\"DejaVuSans-69\"/>\n      <path d=\"M 18.109375 8.203125 \nL 18.109375 -20.796875 \nL 9.078125 -20.796875 \nL 9.078125 54.6875 \nL 18.109375 54.6875 \nL 18.109375 46.390625 \nQ 20.953125 51.265625 25.265625 53.625 \nQ 29.59375 56 35.59375 56 \nQ 45.5625 56 51.78125 48.09375 \nQ 58.015625 40.1875 58.015625 27.296875 \nQ 58.015625 14.40625 51.78125 6.484375 \nQ 45.5625 -1.421875 35.59375 -1.421875 \nQ 29.59375 -1.421875 25.265625 0.953125 \nQ 20.953125 3.328125 18.109375 8.203125 \nz\nM 48.6875 27.296875 \nQ 48.6875 37.203125 44.609375 42.84375 \nQ 40.53125 48.484375 33.40625 48.484375 \nQ 26.265625 48.484375 22.1875 42.84375 \nQ 18.109375 37.203125 18.109375 27.296875 \nQ 18.109375 17.390625 22.1875 11.75 \nQ 26.265625 6.109375 33.40625 6.109375 \nQ 40.53125 6.109375 44.609375 11.75 \nQ 48.6875 17.390625 48.6875 27.296875 \nz\n\" id=\"DejaVuSans-112\"/>\n      <path d=\"M 30.609375 48.390625 \nQ 23.390625 48.390625 19.1875 42.75 \nQ 14.984375 37.109375 14.984375 27.296875 \nQ 14.984375 17.484375 19.15625 11.84375 \nQ 23.34375 6.203125 30.609375 6.203125 \nQ 37.796875 6.203125 41.984375 11.859375 \nQ 46.1875 17.53125 46.1875 27.296875 \nQ 46.1875 37.015625 41.984375 42.703125 \nQ 37.796875 48.390625 30.609375 48.390625 \nz\nM 30.609375 56 \nQ 42.328125 56 49.015625 48.375 \nQ 55.71875 40.765625 55.71875 27.296875 \nQ 55.71875 13.875 49.015625 6.21875 \nQ 42.328125 -1.421875 30.609375 -1.421875 \nQ 18.84375 -1.421875 12.171875 6.21875 \nQ 5.515625 13.875 5.515625 27.296875 \nQ 5.515625 40.765625 12.171875 48.375 \nQ 18.84375 56 30.609375 56 \nz\n\" id=\"DejaVuSans-111\"/>\n      <path d=\"M 48.78125 52.59375 \nL 48.78125 44.1875 \nQ 44.96875 46.296875 41.140625 47.34375 \nQ 37.3125 48.390625 33.40625 48.390625 \nQ 24.65625 48.390625 19.8125 42.84375 \nQ 14.984375 37.3125 14.984375 27.296875 \nQ 14.984375 17.28125 19.8125 11.734375 \nQ 24.65625 6.203125 33.40625 6.203125 \nQ 37.3125 6.203125 41.140625 7.25 \nQ 44.96875 8.296875 48.78125 10.40625 \nL 48.78125 2.09375 \nQ 45.015625 0.34375 40.984375 -0.53125 \nQ 36.96875 -1.421875 32.421875 -1.421875 \nQ 20.0625 -1.421875 12.78125 6.34375 \nQ 5.515625 14.109375 5.515625 27.296875 \nQ 5.515625 40.671875 12.859375 48.328125 \nQ 20.21875 56 33.015625 56 \nQ 37.15625 56 41.109375 55.140625 \nQ 45.0625 54.296875 48.78125 52.59375 \nz\n\" id=\"DejaVuSans-99\"/>\n      <path d=\"M 54.890625 33.015625 \nL 54.890625 0 \nL 45.90625 0 \nL 45.90625 32.71875 \nQ 45.90625 40.484375 42.875 44.328125 \nQ 39.84375 48.1875 33.796875 48.1875 \nQ 26.515625 48.1875 22.3125 43.546875 \nQ 18.109375 38.921875 18.109375 30.90625 \nL 18.109375 0 \nL 9.078125 0 \nL 9.078125 75.984375 \nL 18.109375 75.984375 \nL 18.109375 46.1875 \nQ 21.34375 51.125 25.703125 53.5625 \nQ 30.078125 56 35.796875 56 \nQ 45.21875 56 50.046875 50.171875 \nQ 54.890625 44.34375 54.890625 33.015625 \nz\n\" id=\"DejaVuSans-104\"/>\n      <path d=\"M 44.28125 53.078125 \nL 44.28125 44.578125 \nQ 40.484375 46.53125 36.375 47.5 \nQ 32.28125 48.484375 27.875 48.484375 \nQ 21.1875 48.484375 17.84375 46.4375 \nQ 14.5 44.390625 14.5 40.28125 \nQ 14.5 37.15625 16.890625 35.375 \nQ 19.28125 33.59375 26.515625 31.984375 \nL 29.59375 31.296875 \nQ 39.15625 29.25 43.1875 25.515625 \nQ 47.21875 21.78125 47.21875 15.09375 \nQ 47.21875 7.46875 41.1875 3.015625 \nQ 35.15625 -1.421875 24.609375 -1.421875 \nQ 20.21875 -1.421875 15.453125 -0.5625 \nQ 10.6875 0.296875 5.421875 2 \nL 5.421875 11.28125 \nQ 10.40625 8.6875 15.234375 7.390625 \nQ 20.0625 6.109375 24.8125 6.109375 \nQ 31.15625 6.109375 34.5625 8.28125 \nQ 37.984375 10.453125 37.984375 14.40625 \nQ 37.984375 18.0625 35.515625 20.015625 \nQ 33.0625 21.96875 24.703125 23.78125 \nL 21.578125 24.515625 \nQ 13.234375 26.265625 9.515625 29.90625 \nQ 5.8125 33.546875 5.8125 39.890625 \nQ 5.8125 47.609375 11.28125 51.796875 \nQ 16.75 56 26.8125 56 \nQ 31.78125 56 36.171875 55.265625 \nQ 40.578125 54.546875 44.28125 53.078125 \nz\n\" id=\"DejaVuSans-115\"/>\n     </defs>\n     <g transform=\"translate(193.265625 268.034687)scale(0.1 -0.1)\">\n      <use xlink:href=\"#DejaVuSans-69\"/>\n      <use x=\"63.183594\" xlink:href=\"#DejaVuSans-112\"/>\n      <use x=\"126.660156\" xlink:href=\"#DejaVuSans-111\"/>\n      <use x=\"187.841797\" xlink:href=\"#DejaVuSans-99\"/>\n      <use x=\"242.822266\" xlink:href=\"#DejaVuSans-104\"/>\n      <use x=\"306.201172\" xlink:href=\"#DejaVuSans-115\"/>\n     </g>\n    </g>\n   </g>\n   <g id=\"matplotlib.axis_2\">\n    <g id=\"ytick_1\">\n     <g id=\"line2d_7\">\n      <defs>\n       <path d=\"M 0 0 \nL -3.5 0 \n\" id=\"m9e8bfd532b\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n      </defs>\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#m9e8bfd532b\" y=\"236.555659\"/>\n      </g>\n     </g>\n     <g id=\"text_8\">\n      <!-- 0.0 -->\n      <defs>\n       <path d=\"M 10.6875 12.40625 \nL 21 12.40625 \nL 21 0 \nL 10.6875 0 \nz\n\" id=\"DejaVuSans-46\"/>\n      </defs>\n      <g transform=\"translate(20.878125 240.354878)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_2\">\n     <g id=\"line2d_8\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#m9e8bfd532b\" y=\"205.431593\"/>\n      </g>\n     </g>\n     <g id=\"text_9\">\n      <!-- 0.5 -->\n      <g transform=\"translate(20.878125 209.230811)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-48\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-53\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_3\">\n     <g id=\"line2d_9\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#m9e8bfd532b\" y=\"174.307526\"/>\n      </g>\n     </g>\n     <g id=\"text_10\">\n      <!-- 1.0 -->\n      <g transform=\"translate(20.878125 178.106745)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-49\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_4\">\n     <g id=\"line2d_10\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#m9e8bfd532b\" y=\"143.183459\"/>\n      </g>\n     </g>\n     <g id=\"text_11\">\n      <!-- 1.5 -->\n      <g transform=\"translate(20.878125 146.982678)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-49\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-53\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_5\">\n     <g id=\"line2d_11\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#m9e8bfd532b\" y=\"112.059393\"/>\n      </g>\n     </g>\n     <g id=\"text_12\">\n      <!-- 2.0 -->\n      <g transform=\"translate(20.878125 115.858612)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_6\">\n     <g id=\"line2d_12\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#m9e8bfd532b\" y=\"80.935326\"/>\n      </g>\n     </g>\n     <g id=\"text_13\">\n      <!-- 2.5 -->\n      <g transform=\"translate(20.878125 84.734545)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-50\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-53\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"ytick_7\">\n     <g id=\"line2d_13\">\n      <g>\n       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#m9e8bfd532b\" y=\"49.81126\"/>\n      </g>\n     </g>\n     <g id=\"text_14\">\n      <!-- 3.0 -->\n      <g transform=\"translate(20.878125 53.610478)scale(0.1 -0.1)\">\n       <use xlink:href=\"#DejaVuSans-51\"/>\n       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-48\"/>\n      </g>\n     </g>\n    </g>\n    <g id=\"text_15\">\n     <!-- loss -->\n     <defs>\n      <path d=\"M 9.421875 75.984375 \nL 18.40625 75.984375 \nL 18.40625 0 \nL 9.421875 0 \nz\n\" id=\"DejaVuSans-108\"/>\n     </defs>\n     <g transform=\"translate(14.798438 140.695937)rotate(-90)scale(0.1 -0.1)\">\n      <use xlink:href=\"#DejaVuSans-108\"/>\n      <use x=\"27.783203\" xlink:href=\"#DejaVuSans-111\"/>\n      <use x=\"88.964844\" xlink:href=\"#DejaVuSans-115\"/>\n      <use x=\"141.064453\" xlink:href=\"#DejaVuSans-115\"/>\n     </g>\n    </g>\n   </g>\n   <g id=\"line2d_14\">\n    <path clip-path=\"url(#p01277d42f5)\" d=\"M 58.999432 32.201761 \nL 63.269062 157.029549 \nL 64.488956 183.820964 \nL 65.098903 192.927359 \nL 65.708851 198.348004 \nL 66.318798 199.830954 \nL 66.928745 198.078059 \nL 67.538692 197.669547 \nL 68.148639 198.323568 \nL 68.758586 199.379042 \nL 69.978481 202.318517 \nL 72.418269 209.037473 \nL 73.638164 211.501741 \nL 74.248111 212.363355 \nL 74.858058 212.999207 \nL 76.077952 213.762821 \nL 84.617213 217.163768 \nL 85.22716 218.215301 \nL 85.837107 219.039065 \nL 86.447054 219.192689 \nL 87.666949 218.530645 \nL 88.276896 218.677131 \nL 89.49679 219.502207 \nL 90.106737 219.797633 \nL 90.716685 219.846503 \nL 91.936579 219.54439 \nL 93.156473 219.958212 \nL 94.376368 220.118511 \nL 96.206209 219.92525 \nL 98.645998 220.101597 \nL 100.475839 220.057226 \nL 101.695734 220.273365 \nL 102.915628 220.019062 \nL 103.525575 220.147807 \nL 104.135522 219.699138 \nL 104.745469 220.391079 \nL 107.185258 220.248309 \nL 108.405152 220.461173 \nL 118.164307 220.764761 \nL 124.873726 221.03854 \nL 130.973198 221.326049 \nL 151.711401 222.632221 \nL 152.931296 222.68838 \nL 154.15119 222.431399 \nL 154.761137 222.728397 \nL 155.371084 222.885038 \nL 155.981031 222.656796 \nL 156.590979 222.965482 \nL 157.810873 222.907662 \nL 158.42082 223.195081 \nL 159.030767 223.101095 \nL 162.080503 223.542721 \nL 162.69045 223.497277 \nL 164.520292 223.765186 \nL 165.740186 223.86419 \nL 166.96008 224.106304 \nL 168.179975 224.121139 \nL 170.009816 223.866006 \nL 170.619763 224.332302 \nL 171.229711 224.650437 \nL 173.059552 224.376448 \nL 173.669499 224.819704 \nL 174.279446 225.012626 \nL 175.499341 224.698776 \nL 176.109288 224.779618 \nL 176.719235 225.163349 \nL 177.329182 225.389158 \nL 177.939129 225.336174 \nL 179.159024 224.940793 \nL 179.768971 225.031104 \nL 181.598812 225.842978 \nL 182.20876 225.70753 \nL 184.038601 224.888212 \nL 184.648548 225.076486 \nL 185.258495 226.107523 \nL 185.868443 222.036326 \nL 186.47839 224.460689 \nL 187.088337 222.191845 \nL 187.698284 220.447968 \nL 188.308231 220.200988 \nL 191.357967 220.21992 \nL 201.117122 220.391266 \nL 205.386752 220.562319 \nL 209.656382 220.964966 \nL 210.266329 222.080275 \nL 211.486224 225.282451 \nL 212.096171 226.113269 \nL 212.706118 224.162797 \nL 213.316065 225.643395 \nL 214.535959 223.500179 \nL 215.145907 223.162465 \nL 215.755854 223.307349 \nL 216.365801 223.897532 \nL 217.585695 225.75883 \nL 218.195642 226.972921 \nL 218.80559 222.263018 \nL 219.415537 226.16638 \nL 220.635431 224.167873 \nL 221.245378 223.555663 \nL 221.855325 223.416812 \nL 222.465273 223.661165 \nL 223.07522 224.258297 \nL 225.515008 227.174222 \nL 226.124956 225.312703 \nL 226.734903 226.577936 \nL 227.954797 225.632191 \nL 228.564744 225.34091 \nL 229.174691 225.253146 \nL 229.784639 225.348834 \nL 231.61448 226.11581 \nL 232.834374 226.696876 \nL 233.444322 226.895155 \nL 234.054269 227.420077 \nL 234.664216 227.268307 \nL 235.274163 226.924436 \nL 237.104005 226.673801 \nL 238.933846 226.736972 \nL 241.983582 227.084382 \nL 242.593529 227.155738 \nL 243.203476 227.708415 \nL 243.813423 226.001388 \nL 244.423371 227.128583 \nL 245.643265 226.464369 \nL 246.863159 225.776854 \nL 247.473106 225.630504 \nL 248.083054 225.74361 \nL 250.522842 226.823036 \nL 251.742737 227.208821 \nL 252.962631 227.370356 \nL 253.572578 227.706427 \nL 254.182525 227.904228 \nL 254.792472 227.903463 \nL 256.622314 227.492839 \nL 257.232261 227.530419 \nL 258.452155 228.046166 \nL 260.891944 228.090895 \nL 272.48094 228.433418 \nL 279.190359 228.595609 \nL 301.148457 229.165395 \nL 311.517559 229.405376 \nL 312.127506 229.346103 \nL 313.3474 228.940033 \nL 317.617031 228.859041 \nL 320.666766 229.098752 \nL 323.106555 229.129888 \nL 323.716502 229.311512 \nL 324.326449 223.801792 \nL 324.936397 229.118385 \nL 325.546344 228.134174 \nL 326.766238 223.690786 \nL 327.376185 222.524199 \nL 327.986132 222.788873 \nL 328.59608 224.212677 \nL 329.815974 227.522862 \nL 330.425921 228.336 \nL 331.035868 228.597691 \nL 332.255763 228.712969 \nL 332.86571 228.715228 \nL 333.475657 229.231967 \nL 334.085604 227.90031 \nL 334.695551 229.254664 \nL 335.305498 228.744416 \nL 337.13534 229.025736 \nL 338.355234 229.191075 \nL 340.185076 229.15818 \nL 342.624865 229.157503 \nL 354.213861 229.597353 \nL 363.363068 229.874489 \nL 363.363068 229.874489 \n\" style=\"fill:none;stroke:#0000ff;stroke-dasharray:5.55,2.4;stroke-dashoffset:0;stroke-width:1.5;\"/>\n    <defs>\n     <path d=\"M 0 3 \nC 0.795609 3 1.55874 2.683901 2.12132 2.12132 \nC 2.683901 1.55874 3 0.795609 3 0 \nC 3 -0.795609 2.683901 -1.55874 2.12132 -2.12132 \nC 1.55874 -2.683901 0.795609 -3 0 -3 \nC -0.795609 -3 -1.55874 -2.683901 -2.12132 -2.12132 \nC -2.683901 -1.55874 -3 -0.795609 -3 0 \nC -3 0.795609 -2.683901 1.55874 -2.12132 2.12132 \nC -1.55874 2.683901 -0.795609 3 0 3 \nz\n\" id=\"m84dd250d14\" style=\"stroke:#0000ff;\"/>\n    </defs>\n    <g clip-path=\"url(#p01277d42f5)\">\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"58.999432\" xlink:href=\"#m84dd250d14\" y=\"32.201761\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"59.609379\" xlink:href=\"#m84dd250d14\" y=\"50.261984\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"60.219326\" xlink:href=\"#m84dd250d14\" y=\"68.250732\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"60.829273\" xlink:href=\"#m84dd250d14\" y=\"86.49724\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"61.43922\" xlink:href=\"#m84dd250d14\" y=\"104.899284\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"62.049168\" xlink:href=\"#m84dd250d14\" y=\"123.106901\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"62.659115\" xlink:href=\"#m84dd250d14\" y=\"140.659966\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"63.269062\" xlink:href=\"#m84dd250d14\" y=\"157.029549\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"63.879009\" xlink:href=\"#m84dd250d14\" y=\"171.630657\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"64.488956\" xlink:href=\"#m84dd250d14\" y=\"183.820964\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"65.098903\" xlink:href=\"#m84dd250d14\" y=\"192.927359\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"65.708851\" xlink:href=\"#m84dd250d14\" y=\"198.348004\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"66.318798\" xlink:href=\"#m84dd250d14\" y=\"199.830954\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"66.928745\" xlink:href=\"#m84dd250d14\" y=\"198.078059\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"67.538692\" xlink:href=\"#m84dd250d14\" y=\"197.669547\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"68.148639\" xlink:href=\"#m84dd250d14\" y=\"198.323568\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"68.758586\" xlink:href=\"#m84dd250d14\" y=\"199.379042\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"69.368534\" xlink:href=\"#m84dd250d14\" y=\"200.738874\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"69.978481\" xlink:href=\"#m84dd250d14\" y=\"202.318517\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"70.588428\" xlink:href=\"#m84dd250d14\" y=\"204.027839\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"71.198375\" xlink:href=\"#m84dd250d14\" y=\"205.775563\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"71.808322\" xlink:href=\"#m84dd250d14\" y=\"207.473023\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"72.418269\" xlink:href=\"#m84dd250d14\" y=\"209.037473\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"73.028217\" xlink:href=\"#m84dd250d14\" y=\"210.397265\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"73.638164\" xlink:href=\"#m84dd250d14\" y=\"211.501741\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"74.248111\" xlink:href=\"#m84dd250d14\" y=\"212.363355\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"74.858058\" xlink:href=\"#m84dd250d14\" y=\"212.999207\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"75.468005\" xlink:href=\"#m84dd250d14\" y=\"213.443865\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"76.077952\" xlink:href=\"#m84dd250d14\" y=\"213.762821\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"76.6879\" xlink:href=\"#m84dd250d14\" y=\"214.013695\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"77.297847\" xlink:href=\"#m84dd250d14\" y=\"214.236169\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"77.907794\" xlink:href=\"#m84dd250d14\" y=\"214.452879\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"78.517741\" xlink:href=\"#m84dd250d14\" y=\"214.692339\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"79.127688\" xlink:href=\"#m84dd250d14\" y=\"214.943474\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"79.737635\" xlink:href=\"#m84dd250d14\" y=\"215.199727\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"80.347583\" xlink:href=\"#m84dd250d14\" y=\"215.458492\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"80.95753\" xlink:href=\"#m84dd250d14\" y=\"215.716262\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"81.567477\" xlink:href=\"#m84dd250d14\" y=\"215.969125\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"82.177424\" xlink:href=\"#m84dd250d14\" y=\"216.213905\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"82.787371\" xlink:href=\"#m84dd250d14\" y=\"216.460421\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"83.397319\" xlink:href=\"#m84dd250d14\" y=\"216.691672\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"84.007266\" xlink:href=\"#m84dd250d14\" y=\"216.907718\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"84.617213\" xlink:href=\"#m84dd250d14\" y=\"217.163768\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"85.22716\" xlink:href=\"#m84dd250d14\" y=\"218.215301\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"85.837107\" xlink:href=\"#m84dd250d14\" y=\"219.039065\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"86.447054\" xlink:href=\"#m84dd250d14\" y=\"219.192689\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"87.057002\" xlink:href=\"#m84dd250d14\" y=\"218.821922\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"87.666949\" xlink:href=\"#m84dd250d14\" y=\"218.530645\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"88.276896\" xlink:href=\"#m84dd250d14\" y=\"218.677131\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"88.886843\" xlink:href=\"#m84dd250d14\" y=\"219.114743\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"89.49679\" xlink:href=\"#m84dd250d14\" y=\"219.502207\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"90.106737\" xlink:href=\"#m84dd250d14\" y=\"219.797633\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"90.716685\" xlink:href=\"#m84dd250d14\" y=\"219.846503\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"91.326632\" xlink:href=\"#m84dd250d14\" y=\"219.642365\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"91.936579\" xlink:href=\"#m84dd250d14\" y=\"219.54439\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"92.546526\" xlink:href=\"#m84dd250d14\" y=\"219.793581\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"93.156473\" xlink:href=\"#m84dd250d14\" y=\"219.958212\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"93.76642\" xlink:href=\"#m84dd250d14\" y=\"220.093509\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"94.376368\" xlink:href=\"#m84dd250d14\" y=\"220.118511\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"94.986315\" xlink:href=\"#m84dd250d14\" y=\"220.043281\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"95.596262\" xlink:href=\"#m84dd250d14\" y=\"219.950834\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"96.206209\" xlink:href=\"#m84dd250d14\" y=\"219.92525\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"96.816156\" xlink:href=\"#m84dd250d14\" y=\"219.987172\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"97.426103\" xlink:href=\"#m84dd250d14\" y=\"220.090758\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"98.036051\" xlink:href=\"#m84dd250d14\" y=\"220.119199\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"98.645998\" xlink:href=\"#m84dd250d14\" y=\"220.101597\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"99.255945\" xlink:href=\"#m84dd250d14\" y=\"220.071943\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"99.865892\" xlink:href=\"#m84dd250d14\" y=\"219.983364\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"100.475839\" xlink:href=\"#m84dd250d14\" y=\"220.057226\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"101.085786\" xlink:href=\"#m84dd250d14\" y=\"220.174877\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"101.695734\" xlink:href=\"#m84dd250d14\" y=\"220.273365\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"102.305681\" xlink:href=\"#m84dd250d14\" y=\"220.182635\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"102.915628\" xlink:href=\"#m84dd250d14\" y=\"220.019062\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"103.525575\" xlink:href=\"#m84dd250d14\" y=\"220.147807\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"104.135522\" xlink:href=\"#m84dd250d14\" y=\"219.699138\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"104.745469\" xlink:href=\"#m84dd250d14\" y=\"220.391079\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"105.355417\" xlink:href=\"#m84dd250d14\" y=\"220.361565\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"105.965364\" xlink:href=\"#m84dd250d14\" y=\"220.258676\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"106.575311\" xlink:href=\"#m84dd250d14\" y=\"220.20107\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"107.185258\" xlink:href=\"#m84dd250d14\" y=\"220.248309\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"107.795205\" xlink:href=\"#m84dd250d14\" y=\"220.365641\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"108.405152\" xlink:href=\"#m84dd250d14\" y=\"220.461173\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"109.0151\" xlink:href=\"#m84dd250d14\" y=\"220.473425\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"109.625047\" xlink:href=\"#m84dd250d14\" y=\"220.425171\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"110.234994\" xlink:href=\"#m84dd250d14\" y=\"220.394782\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"110.844941\" xlink:href=\"#m84dd250d14\" y=\"220.432478\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"111.454888\" xlink:href=\"#m84dd250d14\" y=\"220.512754\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"112.064835\" xlink:href=\"#m84dd250d14\" y=\"220.571504\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"112.674783\" xlink:href=\"#m84dd250d14\" y=\"220.577064\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"113.28473\" xlink:href=\"#m84dd250d14\" y=\"220.55698\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"113.894677\" xlink:href=\"#m84dd250d14\" y=\"220.56031\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"114.504624\" xlink:href=\"#m84dd250d14\" y=\"220.603759\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"115.114571\" xlink:href=\"#m84dd250d14\" y=\"220.659742\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"115.724518\" xlink:href=\"#m84dd250d14\" y=\"220.691264\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"116.334466\" xlink:href=\"#m84dd250d14\" y=\"220.690904\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"116.944413\" xlink:href=\"#m84dd250d14\" y=\"220.690504\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"117.55436\" xlink:href=\"#m84dd250d14\" y=\"220.718266\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"118.164307\" xlink:href=\"#m84dd250d14\" y=\"220.764761\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"118.774254\" xlink:href=\"#m84dd250d14\" y=\"220.799361\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"119.384201\" xlink:href=\"#m84dd250d14\" y=\"220.811103\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"119.994149\" xlink:href=\"#m84dd250d14\" y=\"220.819631\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"120.604096\" xlink:href=\"#m84dd250d14\" y=\"220.845992\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"121.214043\" xlink:href=\"#m84dd250d14\" y=\"220.885123\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"121.82399\" xlink:href=\"#m84dd250d14\" y=\"220.915193\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"122.433937\" xlink:href=\"#m84dd250d14\" y=\"220.929297\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"123.043884\" xlink:href=\"#m84dd250d14\" y=\"220.944851\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"123.653832\" xlink:href=\"#m84dd250d14\" y=\"220.976188\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"124.263779\" xlink:href=\"#m84dd250d14\" y=\"221.012893\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"124.873726\" xlink:href=\"#m84dd250d14\" y=\"221.03854\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"125.483673\" xlink:href=\"#m84dd250d14\" y=\"221.057399\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"126.09362\" xlink:href=\"#m84dd250d14\" y=\"221.084965\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"126.703567\" xlink:href=\"#m84dd250d14\" y=\"221.120677\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"127.313515\" xlink:href=\"#m84dd250d14\" y=\"221.150053\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"127.923462\" xlink:href=\"#m84dd250d14\" y=\"221.171904\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"128.533409\" xlink:href=\"#m84dd250d14\" y=\"221.200351\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"129.143356\" xlink:href=\"#m84dd250d14\" y=\"221.236623\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"129.753303\" xlink:href=\"#m84dd250d14\" y=\"221.267493\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"130.36325\" xlink:href=\"#m84dd250d14\" y=\"221.293469\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"130.973198\" xlink:href=\"#m84dd250d14\" y=\"221.326049\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"131.583145\" xlink:href=\"#m84dd250d14\" y=\"221.361391\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"132.193092\" xlink:href=\"#m84dd250d14\" y=\"221.390014\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"132.803039\" xlink:href=\"#m84dd250d14\" y=\"221.419972\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"133.412986\" xlink:href=\"#m84dd250d14\" y=\"221.456681\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"134.022933\" xlink:href=\"#m84dd250d14\" y=\"221.48952\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"134.632881\" xlink:href=\"#m84dd250d14\" y=\"221.520326\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"135.242828\" xlink:href=\"#m84dd250d14\" y=\"221.556759\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"135.852775\" xlink:href=\"#m84dd250d14\" y=\"221.590342\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"136.462722\" xlink:href=\"#m84dd250d14\" y=\"221.622149\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"137.072669\" xlink:href=\"#m84dd250d14\" y=\"221.659604\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"137.682616\" xlink:href=\"#m84dd250d14\" y=\"221.693759\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"138.292564\" xlink:href=\"#m84dd250d14\" y=\"221.728289\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"138.902511\" xlink:href=\"#m84dd250d14\" y=\"221.7657\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"139.512458\" xlink:href=\"#m84dd250d14\" y=\"221.799236\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"140.122405\" xlink:href=\"#m84dd250d14\" y=\"221.837242\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"140.732352\" xlink:href=\"#m84dd250d14\" y=\"221.873435\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"141.342299\" xlink:href=\"#m84dd250d14\" y=\"221.910501\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"141.952247\" xlink:href=\"#m84dd250d14\" y=\"221.948316\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"142.562194\" xlink:href=\"#m84dd250d14\" y=\"221.985242\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"143.172141\" xlink:href=\"#m84dd250d14\" y=\"222.024749\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"143.782088\" xlink:href=\"#m84dd250d14\" y=\"222.062722\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"144.392035\" xlink:href=\"#m84dd250d14\" y=\"222.102625\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"145.001982\" xlink:href=\"#m84dd250d14\" y=\"222.142103\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"145.61193\" xlink:href=\"#m84dd250d14\" y=\"222.182749\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"146.221877\" xlink:href=\"#m84dd250d14\" y=\"222.224649\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"146.831824\" xlink:href=\"#m84dd250d14\" y=\"222.265288\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"147.441771\" xlink:href=\"#m84dd250d14\" y=\"222.309165\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"148.051718\" xlink:href=\"#m84dd250d14\" y=\"222.352733\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"148.661665\" xlink:href=\"#m84dd250d14\" y=\"222.39599\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"149.271613\" xlink:href=\"#m84dd250d14\" y=\"222.441862\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"149.88156\" xlink:href=\"#m84dd250d14\" y=\"222.489007\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"150.491507\" xlink:href=\"#m84dd250d14\" y=\"222.536639\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"151.101454\" xlink:href=\"#m84dd250d14\" y=\"222.584641\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"151.711401\" xlink:href=\"#m84dd250d14\" y=\"222.632221\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"152.321348\" xlink:href=\"#m84dd250d14\" y=\"222.675432\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"152.931296\" xlink:href=\"#m84dd250d14\" y=\"222.68838\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"153.541243\" xlink:href=\"#m84dd250d14\" y=\"222.558955\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"154.15119\" xlink:href=\"#m84dd250d14\" y=\"222.431399\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"154.761137\" xlink:href=\"#m84dd250d14\" y=\"222.728397\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"155.371084\" xlink:href=\"#m84dd250d14\" y=\"222.885038\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"155.981031\" xlink:href=\"#m84dd250d14\" y=\"222.656796\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"156.590979\" xlink:href=\"#m84dd250d14\" y=\"222.965482\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"157.200926\" xlink:href=\"#m84dd250d14\" y=\"222.982724\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"157.810873\" xlink:href=\"#m84dd250d14\" y=\"222.907662\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"158.42082\" xlink:href=\"#m84dd250d14\" y=\"223.195081\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"159.030767\" xlink:href=\"#m84dd250d14\" y=\"223.101095\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"159.640714\" xlink:href=\"#m84dd250d14\" y=\"223.185941\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"160.250662\" xlink:href=\"#m84dd250d14\" y=\"223.364836\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"160.860609\" xlink:href=\"#m84dd250d14\" y=\"223.281643\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"161.470556\" xlink:href=\"#m84dd250d14\" y=\"223.414812\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"162.080503\" xlink:href=\"#m84dd250d14\" y=\"223.542721\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"162.69045\" xlink:href=\"#m84dd250d14\" y=\"223.497277\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"163.300397\" xlink:href=\"#m84dd250d14\" y=\"223.595712\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"163.910345\" xlink:href=\"#m84dd250d14\" y=\"223.745141\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"164.520292\" xlink:href=\"#m84dd250d14\" y=\"223.765186\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"165.130239\" xlink:href=\"#m84dd250d14\" y=\"223.769832\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"165.740186\" xlink:href=\"#m84dd250d14\" y=\"223.86419\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"166.350133\" xlink:href=\"#m84dd250d14\" y=\"224.011499\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"166.96008\" xlink:href=\"#m84dd250d14\" y=\"224.106304\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"167.570028\" xlink:href=\"#m84dd250d14\" y=\"224.137908\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"168.179975\" xlink:href=\"#m84dd250d14\" y=\"224.121139\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"168.789922\" xlink:href=\"#m84dd250d14\" y=\"224.015606\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"169.399869\" xlink:href=\"#m84dd250d14\" y=\"223.893869\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"170.009816\" xlink:href=\"#m84dd250d14\" y=\"223.866006\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"170.619763\" xlink:href=\"#m84dd250d14\" y=\"224.332302\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"171.229711\" xlink:href=\"#m84dd250d14\" y=\"224.650437\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"171.839658\" xlink:href=\"#m84dd250d14\" y=\"224.534455\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"172.449605\" xlink:href=\"#m84dd250d14\" y=\"224.325501\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"173.059552\" xlink:href=\"#m84dd250d14\" y=\"224.376448\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"173.669499\" xlink:href=\"#m84dd250d14\" y=\"224.819704\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"174.279446\" xlink:href=\"#m84dd250d14\" y=\"225.012626\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"174.889394\" xlink:href=\"#m84dd250d14\" y=\"224.845911\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"175.499341\" xlink:href=\"#m84dd250d14\" y=\"224.698776\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"176.109288\" xlink:href=\"#m84dd250d14\" y=\"224.779618\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"176.719235\" xlink:href=\"#m84dd250d14\" y=\"225.163349\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"177.329182\" xlink:href=\"#m84dd250d14\" y=\"225.389158\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"177.939129\" xlink:href=\"#m84dd250d14\" y=\"225.336174\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"178.549077\" xlink:href=\"#m84dd250d14\" y=\"225.153698\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"179.159024\" xlink:href=\"#m84dd250d14\" y=\"224.940793\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"179.768971\" xlink:href=\"#m84dd250d14\" y=\"225.031104\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"180.378918\" xlink:href=\"#m84dd250d14\" y=\"225.320571\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"180.988865\" xlink:href=\"#m84dd250d14\" y=\"225.71374\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"181.598812\" xlink:href=\"#m84dd250d14\" y=\"225.842978\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"182.20876\" xlink:href=\"#m84dd250d14\" y=\"225.70753\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"182.818707\" xlink:href=\"#m84dd250d14\" y=\"225.457799\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"183.428654\" xlink:href=\"#m84dd250d14\" y=\"225.144243\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"184.038601\" xlink:href=\"#m84dd250d14\" y=\"224.888212\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"184.648548\" xlink:href=\"#m84dd250d14\" y=\"225.076486\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"185.258495\" xlink:href=\"#m84dd250d14\" y=\"226.107523\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"185.868443\" xlink:href=\"#m84dd250d14\" y=\"222.036326\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"186.47839\" xlink:href=\"#m84dd250d14\" y=\"224.460689\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"187.088337\" xlink:href=\"#m84dd250d14\" y=\"222.191845\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"187.698284\" xlink:href=\"#m84dd250d14\" y=\"220.447968\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"188.308231\" xlink:href=\"#m84dd250d14\" y=\"220.200988\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"188.918178\" xlink:href=\"#m84dd250d14\" y=\"220.184858\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"189.528126\" xlink:href=\"#m84dd250d14\" y=\"220.178406\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"190.138073\" xlink:href=\"#m84dd250d14\" y=\"220.186819\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"190.74802\" xlink:href=\"#m84dd250d14\" y=\"220.200953\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"191.357967\" xlink:href=\"#m84dd250d14\" y=\"220.21992\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"191.967914\" xlink:href=\"#m84dd250d14\" y=\"220.237226\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"192.577861\" xlink:href=\"#m84dd250d14\" y=\"220.248982\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"193.187809\" xlink:href=\"#m84dd250d14\" y=\"220.257943\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"193.797756\" xlink:href=\"#m84dd250d14\" y=\"220.269157\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"194.407703\" xlink:href=\"#m84dd250d14\" y=\"220.283447\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"195.01765\" xlink:href=\"#m84dd250d14\" y=\"220.297146\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"195.627597\" xlink:href=\"#m84dd250d14\" y=\"220.307275\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"196.237544\" xlink:href=\"#m84dd250d14\" y=\"220.315076\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"196.847492\" xlink:href=\"#m84dd250d14\" y=\"220.323897\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"197.457439\" xlink:href=\"#m84dd250d14\" y=\"220.334836\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"198.067386\" xlink:href=\"#m84dd250d14\" y=\"220.345869\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"198.677333\" xlink:href=\"#m84dd250d14\" y=\"220.354961\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"199.28728\" xlink:href=\"#m84dd250d14\" y=\"220.362693\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"199.897227\" xlink:href=\"#m84dd250d14\" y=\"220.37119\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"200.507175\" xlink:href=\"#m84dd250d14\" y=\"220.381174\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"201.117122\" xlink:href=\"#m84dd250d14\" y=\"220.391266\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"201.727069\" xlink:href=\"#m84dd250d14\" y=\"220.400119\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"202.337016\" xlink:href=\"#m84dd250d14\" y=\"220.408142\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"202.946963\" xlink:href=\"#m84dd250d14\" y=\"220.418863\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"203.55691\" xlink:href=\"#m84dd250d14\" y=\"220.445627\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"204.166858\" xlink:href=\"#m84dd250d14\" y=\"220.480561\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"204.776805\" xlink:href=\"#m84dd250d14\" y=\"220.52025\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"205.386752\" xlink:href=\"#m84dd250d14\" y=\"220.562319\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"205.996699\" xlink:href=\"#m84dd250d14\" y=\"220.604995\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"206.606646\" xlink:href=\"#m84dd250d14\" y=\"220.646214\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"207.216593\" xlink:href=\"#m84dd250d14\" y=\"220.683847\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"207.826541\" xlink:href=\"#m84dd250d14\" y=\"220.716669\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"208.436488\" xlink:href=\"#m84dd250d14\" y=\"220.744638\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"209.046435\" xlink:href=\"#m84dd250d14\" y=\"220.768145\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"209.656382\" xlink:href=\"#m84dd250d14\" y=\"220.964966\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"210.266329\" xlink:href=\"#m84dd250d14\" y=\"222.080275\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"210.876276\" xlink:href=\"#m84dd250d14\" y=\"223.601672\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"211.486224\" xlink:href=\"#m84dd250d14\" y=\"225.282451\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"212.096171\" xlink:href=\"#m84dd250d14\" y=\"226.113269\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"212.706118\" xlink:href=\"#m84dd250d14\" y=\"224.162797\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"213.316065\" xlink:href=\"#m84dd250d14\" y=\"225.643395\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"213.926012\" xlink:href=\"#m84dd250d14\" y=\"224.467039\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"214.535959\" xlink:href=\"#m84dd250d14\" y=\"223.500179\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"215.145907\" xlink:href=\"#m84dd250d14\" y=\"223.162465\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"215.755854\" xlink:href=\"#m84dd250d14\" y=\"223.307349\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"216.365801\" xlink:href=\"#m84dd250d14\" y=\"223.897532\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"216.975748\" xlink:href=\"#m84dd250d14\" y=\"224.849713\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"217.585695\" xlink:href=\"#m84dd250d14\" y=\"225.75883\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"218.195642\" xlink:href=\"#m84dd250d14\" y=\"226.972921\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"218.80559\" xlink:href=\"#m84dd250d14\" y=\"222.263018\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"219.415537\" xlink:href=\"#m84dd250d14\" y=\"226.16638\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"220.025484\" xlink:href=\"#m84dd250d14\" y=\"225.172541\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"220.635431\" xlink:href=\"#m84dd250d14\" y=\"224.167873\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"221.245378\" xlink:href=\"#m84dd250d14\" y=\"223.555663\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"221.855325\" xlink:href=\"#m84dd250d14\" y=\"223.416812\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"222.465273\" xlink:href=\"#m84dd250d14\" y=\"223.661165\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"223.07522\" xlink:href=\"#m84dd250d14\" y=\"224.258297\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"223.685167\" xlink:href=\"#m84dd250d14\" y=\"225.029688\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"224.295114\" xlink:href=\"#m84dd250d14\" y=\"225.802985\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"224.905061\" xlink:href=\"#m84dd250d14\" y=\"226.409795\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"225.515008\" xlink:href=\"#m84dd250d14\" y=\"227.174222\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"226.124956\" xlink:href=\"#m84dd250d14\" y=\"225.312703\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"226.734903\" xlink:href=\"#m84dd250d14\" y=\"226.577936\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"227.34485\" xlink:href=\"#m84dd250d14\" y=\"226.097492\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"227.954797\" xlink:href=\"#m84dd250d14\" y=\"225.632191\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"228.564744\" xlink:href=\"#m84dd250d14\" y=\"225.34091\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"229.174691\" xlink:href=\"#m84dd250d14\" y=\"225.253146\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"229.784639\" xlink:href=\"#m84dd250d14\" y=\"225.348834\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"230.394586\" xlink:href=\"#m84dd250d14\" y=\"225.568188\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"231.004533\" xlink:href=\"#m84dd250d14\" y=\"225.828518\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"231.61448\" xlink:href=\"#m84dd250d14\" y=\"226.11581\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"232.224427\" xlink:href=\"#m84dd250d14\" y=\"226.427412\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"232.834374\" xlink:href=\"#m84dd250d14\" y=\"226.696876\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"233.444322\" xlink:href=\"#m84dd250d14\" y=\"226.895155\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"234.054269\" xlink:href=\"#m84dd250d14\" y=\"227.420077\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"234.664216\" xlink:href=\"#m84dd250d14\" y=\"227.268307\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"235.274163\" xlink:href=\"#m84dd250d14\" y=\"226.924436\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"235.88411\" xlink:href=\"#m84dd250d14\" y=\"226.807753\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"236.494057\" xlink:href=\"#m84dd250d14\" y=\"226.718301\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"237.104005\" xlink:href=\"#m84dd250d14\" y=\"226.673801\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"237.713952\" xlink:href=\"#m84dd250d14\" y=\"226.671777\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"238.323899\" xlink:href=\"#m84dd250d14\" y=\"226.697677\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"238.933846\" xlink:href=\"#m84dd250d14\" y=\"226.736972\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"239.543793\" xlink:href=\"#m84dd250d14\" y=\"226.784221\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"240.15374\" xlink:href=\"#m84dd250d14\" y=\"226.84269\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"240.763688\" xlink:href=\"#m84dd250d14\" y=\"226.915911\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"241.373635\" xlink:href=\"#m84dd250d14\" y=\"227.00019\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"241.983582\" xlink:href=\"#m84dd250d14\" y=\"227.084382\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"242.593529\" xlink:href=\"#m84dd250d14\" y=\"227.155738\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"243.203476\" xlink:href=\"#m84dd250d14\" y=\"227.708415\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"243.813423\" xlink:href=\"#m84dd250d14\" y=\"226.001388\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"244.423371\" xlink:href=\"#m84dd250d14\" y=\"227.128583\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"245.033318\" xlink:href=\"#m84dd250d14\" y=\"226.842473\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"245.643265\" xlink:href=\"#m84dd250d14\" y=\"226.464369\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"246.253212\" xlink:href=\"#m84dd250d14\" y=\"226.11246\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"246.863159\" xlink:href=\"#m84dd250d14\" y=\"225.776854\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"247.473106\" xlink:href=\"#m84dd250d14\" y=\"225.630504\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"248.083054\" xlink:href=\"#m84dd250d14\" y=\"225.74361\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"248.693001\" xlink:href=\"#m84dd250d14\" y=\"226.035764\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"249.302948\" xlink:href=\"#m84dd250d14\" y=\"226.359037\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"249.912895\" xlink:href=\"#m84dd250d14\" y=\"226.61118\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"250.522842\" xlink:href=\"#m84dd250d14\" y=\"226.823036\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"251.132789\" xlink:href=\"#m84dd250d14\" y=\"227.046754\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"251.742737\" xlink:href=\"#m84dd250d14\" y=\"227.208821\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"252.352684\" xlink:href=\"#m84dd250d14\" y=\"227.31397\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"252.962631\" xlink:href=\"#m84dd250d14\" y=\"227.370356\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"253.572578\" xlink:href=\"#m84dd250d14\" y=\"227.706427\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"254.182525\" xlink:href=\"#m84dd250d14\" y=\"227.904228\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"254.792472\" xlink:href=\"#m84dd250d14\" y=\"227.903463\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"255.40242\" xlink:href=\"#m84dd250d14\" y=\"227.768425\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"256.012367\" xlink:href=\"#m84dd250d14\" y=\"227.573371\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"256.622314\" xlink:href=\"#m84dd250d14\" y=\"227.492839\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"257.232261\" xlink:href=\"#m84dd250d14\" y=\"227.530419\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"257.842208\" xlink:href=\"#m84dd250d14\" y=\"227.821902\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"258.452155\" xlink:href=\"#m84dd250d14\" y=\"228.046166\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"259.062103\" xlink:href=\"#m84dd250d14\" y=\"228.030596\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"259.67205\" xlink:href=\"#m84dd250d14\" y=\"227.904633\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"260.281997\" xlink:href=\"#m84dd250d14\" y=\"227.924097\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"260.891944\" xlink:href=\"#m84dd250d14\" y=\"228.090895\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"261.501891\" xlink:href=\"#m84dd250d14\" y=\"228.114217\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"262.111838\" xlink:href=\"#m84dd250d14\" y=\"228.043279\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"262.721786\" xlink:href=\"#m84dd250d14\" y=\"228.120994\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"263.331733\" xlink:href=\"#m84dd250d14\" y=\"228.206222\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"263.94168\" xlink:href=\"#m84dd250d14\" y=\"228.167681\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"264.551627\" xlink:href=\"#m84dd250d14\" y=\"228.186137\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"265.161574\" xlink:href=\"#m84dd250d14\" y=\"228.251467\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"265.771521\" xlink:href=\"#m84dd250d14\" y=\"228.235706\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"266.381469\" xlink:href=\"#m84dd250d14\" y=\"228.24463\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"266.991416\" xlink:href=\"#m84dd250d14\" y=\"228.297343\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"267.601363\" xlink:href=\"#m84dd250d14\" y=\"228.294297\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"268.21131\" xlink:href=\"#m84dd250d14\" y=\"228.308344\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"268.821257\" xlink:href=\"#m84dd250d14\" y=\"228.348574\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"269.431204\" xlink:href=\"#m84dd250d14\" y=\"228.346902\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"270.041152\" xlink:href=\"#m84dd250d14\" y=\"228.363266\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"270.651099\" xlink:href=\"#m84dd250d14\" y=\"228.391414\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"271.261046\" xlink:href=\"#m84dd250d14\" y=\"228.391395\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"271.870993\" xlink:href=\"#m84dd250d14\" y=\"228.411551\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"272.48094\" xlink:href=\"#m84dd250d14\" y=\"228.433418\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"273.090887\" xlink:href=\"#m84dd250d14\" y=\"228.438327\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"273.700835\" xlink:href=\"#m84dd250d14\" y=\"228.460844\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"274.310782\" xlink:href=\"#m84dd250d14\" y=\"228.477769\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"274.920729\" xlink:href=\"#m84dd250d14\" y=\"228.485817\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"275.530676\" xlink:href=\"#m84dd250d14\" y=\"228.507\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"276.140623\" xlink:href=\"#m84dd250d14\" y=\"228.5202\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"276.75057\" xlink:href=\"#m84dd250d14\" y=\"228.530832\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"277.360518\" xlink:href=\"#m84dd250d14\" y=\"228.550768\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"277.970465\" xlink:href=\"#m84dd250d14\" y=\"228.563364\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"278.580412\" xlink:href=\"#m84dd250d14\" y=\"228.576558\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"279.190359\" xlink:href=\"#m84dd250d14\" y=\"228.595609\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"279.800306\" xlink:href=\"#m84dd250d14\" y=\"228.608444\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"280.410253\" xlink:href=\"#m84dd250d14\" y=\"228.622498\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"281.020201\" xlink:href=\"#m84dd250d14\" y=\"228.640283\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"281.630148\" xlink:href=\"#m84dd250d14\" y=\"228.653383\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"282.240095\" xlink:href=\"#m84dd250d14\" y=\"228.667585\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"282.850042\" xlink:href=\"#m84dd250d14\" y=\"228.684814\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"283.459989\" xlink:href=\"#m84dd250d14\" y=\"228.698874\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"284.069936\" xlink:href=\"#m84dd250d14\" y=\"228.713348\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"284.679884\" xlink:href=\"#m84dd250d14\" y=\"228.730409\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"285.289831\" xlink:href=\"#m84dd250d14\" y=\"228.745438\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"285.899778\" xlink:href=\"#m84dd250d14\" y=\"228.759888\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"286.509725\" xlink:href=\"#m84dd250d14\" y=\"228.776432\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"287.119672\" xlink:href=\"#m84dd250d14\" y=\"228.792199\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"287.729619\" xlink:href=\"#m84dd250d14\" y=\"228.806806\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"288.339567\" xlink:href=\"#m84dd250d14\" y=\"228.822808\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"288.949514\" xlink:href=\"#m84dd250d14\" y=\"228.839262\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"289.559461\" xlink:href=\"#m84dd250d14\" y=\"228.854603\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"290.169408\" xlink:href=\"#m84dd250d14\" y=\"228.870204\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"290.779355\" xlink:href=\"#m84dd250d14\" y=\"228.88677\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"291.389302\" xlink:href=\"#m84dd250d14\" y=\"228.902968\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"291.99925\" xlink:href=\"#m84dd250d14\" y=\"228.91857\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"292.609197\" xlink:href=\"#m84dd250d14\" y=\"228.934652\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"293.219144\" xlink:href=\"#m84dd250d14\" y=\"228.951246\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"293.829091\" xlink:href=\"#m84dd250d14\" y=\"228.96753\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"294.439038\" xlink:href=\"#m84dd250d14\" y=\"228.983513\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"295.048985\" xlink:href=\"#m84dd250d14\" y=\"228.999824\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"295.658933\" xlink:href=\"#m84dd250d14\" y=\"229.016507\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"296.26888\" xlink:href=\"#m84dd250d14\" y=\"229.033076\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"296.878827\" xlink:href=\"#m84dd250d14\" y=\"229.04938\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"297.488774\" xlink:href=\"#m84dd250d14\" y=\"229.065732\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"298.098721\" xlink:href=\"#m84dd250d14\" y=\"229.082342\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"298.708668\" xlink:href=\"#m84dd250d14\" y=\"229.099076\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"299.318616\" xlink:href=\"#m84dd250d14\" y=\"229.115712\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"299.928563\" xlink:href=\"#m84dd250d14\" y=\"229.132225\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"300.53851\" xlink:href=\"#m84dd250d14\" y=\"229.148754\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"301.148457\" xlink:href=\"#m84dd250d14\" y=\"229.165395\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"301.758404\" xlink:href=\"#m84dd250d14\" y=\"229.182138\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"302.368351\" xlink:href=\"#m84dd250d14\" y=\"229.198894\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"302.978299\" xlink:href=\"#m84dd250d14\" y=\"229.215603\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"303.588246\" xlink:href=\"#m84dd250d14\" y=\"229.23225\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"304.198193\" xlink:href=\"#m84dd250d14\" y=\"229.24886\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"304.80814\" xlink:href=\"#m84dd250d14\" y=\"229.26546\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"305.418087\" xlink:href=\"#m84dd250d14\" y=\"229.28206\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"306.028034\" xlink:href=\"#m84dd250d14\" y=\"229.298661\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"306.637982\" xlink:href=\"#m84dd250d14\" y=\"229.315241\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"307.247929\" xlink:href=\"#m84dd250d14\" y=\"229.331774\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"307.857876\" xlink:href=\"#m84dd250d14\" y=\"229.348213\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"308.467823\" xlink:href=\"#m84dd250d14\" y=\"229.364465\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"309.07777\" xlink:href=\"#m84dd250d14\" y=\"229.380322\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"309.687717\" xlink:href=\"#m84dd250d14\" y=\"229.395261\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"310.297665\" xlink:href=\"#m84dd250d14\" y=\"229.407986\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"310.907612\" xlink:href=\"#m84dd250d14\" y=\"229.414665\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"311.517559\" xlink:href=\"#m84dd250d14\" y=\"229.405376\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"312.127506\" xlink:href=\"#m84dd250d14\" y=\"229.346103\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"312.737453\" xlink:href=\"#m84dd250d14\" y=\"229.156556\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"313.3474\" xlink:href=\"#m84dd250d14\" y=\"228.940033\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"313.957348\" xlink:href=\"#m84dd250d14\" y=\"228.915073\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"314.567295\" xlink:href=\"#m84dd250d14\" y=\"228.869275\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"315.177242\" xlink:href=\"#m84dd250d14\" y=\"228.820238\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"315.787189\" xlink:href=\"#m84dd250d14\" y=\"228.787337\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"316.397136\" xlink:href=\"#m84dd250d14\" y=\"228.783006\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"317.007083\" xlink:href=\"#m84dd250d14\" y=\"228.809318\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"317.617031\" xlink:href=\"#m84dd250d14\" y=\"228.859041\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"318.226978\" xlink:href=\"#m84dd250d14\" y=\"228.920142\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"318.836925\" xlink:href=\"#m84dd250d14\" y=\"228.980903\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"319.446872\" xlink:href=\"#m84dd250d14\" y=\"229.033085\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"320.056819\" xlink:href=\"#m84dd250d14\" y=\"229.072605\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"320.666766\" xlink:href=\"#m84dd250d14\" y=\"229.098752\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"321.276714\" xlink:href=\"#m84dd250d14\" y=\"229.113174\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"321.886661\" xlink:href=\"#m84dd250d14\" y=\"229.121408\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"322.496608\" xlink:href=\"#m84dd250d14\" y=\"229.125674\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"323.106555\" xlink:href=\"#m84dd250d14\" y=\"229.129888\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"323.716502\" xlink:href=\"#m84dd250d14\" y=\"229.311512\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"324.326449\" xlink:href=\"#m84dd250d14\" y=\"223.801792\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"324.936397\" xlink:href=\"#m84dd250d14\" y=\"229.118385\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"325.546344\" xlink:href=\"#m84dd250d14\" y=\"228.134174\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"326.156291\" xlink:href=\"#m84dd250d14\" y=\"225.734372\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"326.766238\" xlink:href=\"#m84dd250d14\" y=\"223.690786\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"327.376185\" xlink:href=\"#m84dd250d14\" y=\"222.524199\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"327.986132\" xlink:href=\"#m84dd250d14\" y=\"222.788873\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"328.59608\" xlink:href=\"#m84dd250d14\" y=\"224.212677\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"329.206027\" xlink:href=\"#m84dd250d14\" y=\"225.973831\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"329.815974\" xlink:href=\"#m84dd250d14\" y=\"227.522862\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"330.425921\" xlink:href=\"#m84dd250d14\" y=\"228.336\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"331.035868\" xlink:href=\"#m84dd250d14\" y=\"228.597691\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"331.645815\" xlink:href=\"#m84dd250d14\" y=\"228.687657\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"332.255763\" xlink:href=\"#m84dd250d14\" y=\"228.712969\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"332.86571\" xlink:href=\"#m84dd250d14\" y=\"228.715228\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"333.475657\" xlink:href=\"#m84dd250d14\" y=\"229.231967\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"334.085604\" xlink:href=\"#m84dd250d14\" y=\"227.90031\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"334.695551\" xlink:href=\"#m84dd250d14\" y=\"229.254664\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"335.305498\" xlink:href=\"#m84dd250d14\" y=\"228.744416\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"335.915446\" xlink:href=\"#m84dd250d14\" y=\"228.811923\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"336.525393\" xlink:href=\"#m84dd250d14\" y=\"228.912114\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"337.13534\" xlink:href=\"#m84dd250d14\" y=\"229.025736\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"337.745287\" xlink:href=\"#m84dd250d14\" y=\"229.127765\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"338.355234\" xlink:href=\"#m84dd250d14\" y=\"229.191075\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"338.965181\" xlink:href=\"#m84dd250d14\" y=\"229.20853\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"339.575129\" xlink:href=\"#m84dd250d14\" y=\"229.19064\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"340.185076\" xlink:href=\"#m84dd250d14\" y=\"229.15818\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"340.795023\" xlink:href=\"#m84dd250d14\" y=\"229.131456\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"341.40497\" xlink:href=\"#m84dd250d14\" y=\"229.122577\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"342.014917\" xlink:href=\"#m84dd250d14\" y=\"229.133285\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"342.624865\" xlink:href=\"#m84dd250d14\" y=\"229.157503\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"343.234812\" xlink:href=\"#m84dd250d14\" y=\"229.186432\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"343.844759\" xlink:href=\"#m84dd250d14\" y=\"229.213674\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"344.454706\" xlink:href=\"#m84dd250d14\" y=\"229.23803\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"345.064653\" xlink:href=\"#m84dd250d14\" y=\"229.262729\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"345.6746\" xlink:href=\"#m84dd250d14\" y=\"229.292017\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"346.284548\" xlink:href=\"#m84dd250d14\" y=\"229.327564\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"346.894495\" xlink:href=\"#m84dd250d14\" y=\"229.366963\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"347.504442\" xlink:href=\"#m84dd250d14\" y=\"229.404916\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"348.114389\" xlink:href=\"#m84dd250d14\" y=\"229.436121\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"348.724336\" xlink:href=\"#m84dd250d14\" y=\"229.458011\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"349.334283\" xlink:href=\"#m84dd250d14\" y=\"229.471884\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"349.944231\" xlink:href=\"#m84dd250d14\" y=\"229.481909\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"350.554178\" xlink:href=\"#m84dd250d14\" y=\"229.492734\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"351.164125\" xlink:href=\"#m84dd250d14\" y=\"229.507172\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"351.774072\" xlink:href=\"#m84dd250d14\" y=\"229.525245\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"352.384019\" xlink:href=\"#m84dd250d14\" y=\"229.54492\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"352.993966\" xlink:href=\"#m84dd250d14\" y=\"229.563877\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"353.603914\" xlink:href=\"#m84dd250d14\" y=\"229.581105\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"354.213861\" xlink:href=\"#m84dd250d14\" y=\"229.597353\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"354.823808\" xlink:href=\"#m84dd250d14\" y=\"229.614327\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"355.433755\" xlink:href=\"#m84dd250d14\" y=\"229.633298\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"356.043702\" xlink:href=\"#m84dd250d14\" y=\"229.654133\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"356.653649\" xlink:href=\"#m84dd250d14\" y=\"229.675405\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"357.263597\" xlink:href=\"#m84dd250d14\" y=\"229.695405\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"357.873544\" xlink:href=\"#m84dd250d14\" y=\"229.71331\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"358.483491\" xlink:href=\"#m84dd250d14\" y=\"229.729689\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"359.093438\" xlink:href=\"#m84dd250d14\" y=\"229.74596\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"359.703385\" xlink:href=\"#m84dd250d14\" y=\"229.763307\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"360.313332\" xlink:href=\"#m84dd250d14\" y=\"229.781882\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"360.92328\" xlink:href=\"#m84dd250d14\" y=\"229.800899\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"361.533227\" xlink:href=\"#m84dd250d14\" y=\"229.819474\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"362.143174\" xlink:href=\"#m84dd250d14\" y=\"229.837444\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"362.753121\" xlink:href=\"#m84dd250d14\" y=\"229.855492\"/>\n     <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"363.363068\" xlink:href=\"#m84dd250d14\" y=\"229.874489\"/>\n    </g>\n   </g>\n   <g id=\"patch_3\">\n    <path d=\"M 43.78125 239.758125 \nL 43.78125 22.318125 \n\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n   </g>\n   <g id=\"patch_4\">\n    <path d=\"M 378.58125 239.758125 \nL 378.58125 22.318125 \n\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n   </g>\n   <g id=\"patch_5\">\n    <path d=\"M 43.78125 239.758125 \nL 378.58125 239.758125 \n\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n   </g>\n   <g id=\"patch_6\">\n    <path d=\"M 43.78125 22.318125 \nL 378.58125 22.318125 \n\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n   </g>\n   <g id=\"text_16\">\n    <!-- Training loss -->\n    <defs>\n     <path d=\"M -0.296875 72.90625 \nL 61.375 72.90625 \nL 61.375 64.59375 \nL 35.5 64.59375 \nL 35.5 0 \nL 25.59375 0 \nL 25.59375 64.59375 \nL -0.296875 64.59375 \nz\n\" id=\"DejaVuSans-84\"/>\n     <path d=\"M 41.109375 46.296875 \nQ 39.59375 47.171875 37.8125 47.578125 \nQ 36.03125 48 33.890625 48 \nQ 26.265625 48 22.1875 43.046875 \nQ 18.109375 38.09375 18.109375 28.8125 \nL 18.109375 0 \nL 9.078125 0 \nL 9.078125 54.6875 \nL 18.109375 54.6875 \nL 18.109375 46.1875 \nQ 20.953125 51.171875 25.484375 53.578125 \nQ 30.03125 56 36.53125 56 \nQ 37.453125 56 38.578125 55.875 \nQ 39.703125 55.765625 41.0625 55.515625 \nz\n\" id=\"DejaVuSans-114\"/>\n     <path d=\"M 34.28125 27.484375 \nQ 23.390625 27.484375 19.1875 25 \nQ 14.984375 22.515625 14.984375 16.5 \nQ 14.984375 11.71875 18.140625 8.90625 \nQ 21.296875 6.109375 26.703125 6.109375 \nQ 34.1875 6.109375 38.703125 11.40625 \nQ 43.21875 16.703125 43.21875 25.484375 \nL 43.21875 27.484375 \nz\nM 52.203125 31.203125 \nL 52.203125 0 \nL 43.21875 0 \nL 43.21875 8.296875 \nQ 40.140625 3.328125 35.546875 0.953125 \nQ 30.953125 -1.421875 24.3125 -1.421875 \nQ 15.921875 -1.421875 10.953125 3.296875 \nQ 6 8.015625 6 15.921875 \nQ 6 25.140625 12.171875 29.828125 \nQ 18.359375 34.515625 30.609375 34.515625 \nL 43.21875 34.515625 \nL 43.21875 35.40625 \nQ 43.21875 41.609375 39.140625 45 \nQ 35.0625 48.390625 27.6875 48.390625 \nQ 23 48.390625 18.546875 47.265625 \nQ 14.109375 46.140625 10.015625 43.890625 \nL 10.015625 52.203125 \nQ 14.9375 54.109375 19.578125 55.046875 \nQ 24.21875 56 28.609375 56 \nQ 40.484375 56 46.34375 49.84375 \nQ 52.203125 43.703125 52.203125 31.203125 \nz\n\" id=\"DejaVuSans-97\"/>\n     <path d=\"M 9.421875 54.6875 \nL 18.40625 54.6875 \nL 18.40625 0 \nL 9.421875 0 \nz\nM 9.421875 75.984375 \nL 18.40625 75.984375 \nL 18.40625 64.59375 \nL 9.421875 64.59375 \nz\n\" id=\"DejaVuSans-105\"/>\n     <path d=\"M 54.890625 33.015625 \nL 54.890625 0 \nL 45.90625 0 \nL 45.90625 32.71875 \nQ 45.90625 40.484375 42.875 44.328125 \nQ 39.84375 48.1875 33.796875 48.1875 \nQ 26.515625 48.1875 22.3125 43.546875 \nQ 18.109375 38.921875 18.109375 30.90625 \nL 18.109375 0 \nL 9.078125 0 \nL 9.078125 54.6875 \nL 18.109375 54.6875 \nL 18.109375 46.1875 \nQ 21.34375 51.125 25.703125 53.5625 \nQ 30.078125 56 35.796875 56 \nQ 45.21875 56 50.046875 50.171875 \nQ 54.890625 44.34375 54.890625 33.015625 \nz\n\" id=\"DejaVuSans-110\"/>\n     <path d=\"M 45.40625 27.984375 \nQ 45.40625 37.75 41.375 43.109375 \nQ 37.359375 48.484375 30.078125 48.484375 \nQ 22.859375 48.484375 18.828125 43.109375 \nQ 14.796875 37.75 14.796875 27.984375 \nQ 14.796875 18.265625 18.828125 12.890625 \nQ 22.859375 7.515625 30.078125 7.515625 \nQ 37.359375 7.515625 41.375 12.890625 \nQ 45.40625 18.265625 45.40625 27.984375 \nz\nM 54.390625 6.78125 \nQ 54.390625 -7.171875 48.1875 -13.984375 \nQ 42 -20.796875 29.203125 -20.796875 \nQ 24.46875 -20.796875 20.265625 -20.09375 \nQ 16.0625 -19.390625 12.109375 -17.921875 \nL 12.109375 -9.1875 \nQ 16.0625 -11.328125 19.921875 -12.34375 \nQ 23.78125 -13.375 27.78125 -13.375 \nQ 36.625 -13.375 41.015625 -8.765625 \nQ 45.40625 -4.15625 45.40625 5.171875 \nL 45.40625 9.625 \nQ 42.625 4.78125 38.28125 2.390625 \nQ 33.9375 0 27.875 0 \nQ 17.828125 0 11.671875 7.65625 \nQ 5.515625 15.328125 5.515625 27.984375 \nQ 5.515625 40.671875 11.671875 48.328125 \nQ 17.828125 56 27.875 56 \nQ 33.9375 56 38.28125 53.609375 \nQ 42.625 51.21875 45.40625 46.390625 \nL 45.40625 54.6875 \nL 54.390625 54.6875 \nz\n\" id=\"DejaVuSans-103\"/>\n     <path id=\"DejaVuSans-32\"/>\n    </defs>\n    <g transform=\"translate(174.014063 16.318125)scale(0.12 -0.12)\">\n     <use xlink:href=\"#DejaVuSans-84\"/>\n     <use x=\"46.333984\" xlink:href=\"#DejaVuSans-114\"/>\n     <use x=\"87.447266\" xlink:href=\"#DejaVuSans-97\"/>\n     <use x=\"148.726562\" xlink:href=\"#DejaVuSans-105\"/>\n     <use x=\"176.509766\" xlink:href=\"#DejaVuSans-110\"/>\n     <use x=\"239.888672\" xlink:href=\"#DejaVuSans-105\"/>\n     <use x=\"267.671875\" xlink:href=\"#DejaVuSans-110\"/>\n     <use x=\"331.050781\" xlink:href=\"#DejaVuSans-103\"/>\n     <use x=\"394.527344\" xlink:href=\"#DejaVuSans-32\"/>\n     <use x=\"426.314453\" xlink:href=\"#DejaVuSans-108\"/>\n     <use x=\"454.097656\" xlink:href=\"#DejaVuSans-111\"/>\n     <use x=\"515.279297\" xlink:href=\"#DejaVuSans-115\"/>\n     <use x=\"567.378906\" xlink:href=\"#DejaVuSans-115\"/>\n    </g>\n   </g>\n   <g id=\"legend_1\">\n    <g id=\"patch_7\">\n     <path d=\"M 291.990625 45.274375 \nL 371.58125 45.274375 \nQ 373.58125 45.274375 373.58125 43.274375 \nL 373.58125 29.318125 \nQ 373.58125 27.318125 371.58125 27.318125 \nL 291.990625 27.318125 \nQ 289.990625 27.318125 289.990625 29.318125 \nL 289.990625 43.274375 \nQ 289.990625 45.274375 291.990625 45.274375 \nz\n\" style=\"fill:#ffffff;opacity:0.8;stroke:#cccccc;stroke-linejoin:miter;\"/>\n    </g>\n    <g id=\"line2d_15\">\n     <path d=\"M 293.990625 35.416562 \nL 313.990625 35.416562 \n\" style=\"fill:none;stroke:#0000ff;stroke-dasharray:5.55,2.4;stroke-dashoffset:0;stroke-width:1.5;\"/>\n    </g>\n    <g id=\"line2d_16\">\n     <g>\n      <use style=\"fill:#0000ff;stroke:#0000ff;\" x=\"303.990625\" xlink:href=\"#m84dd250d14\" y=\"35.416562\"/>\n     </g>\n    </g>\n    <g id=\"text_17\">\n     <!-- train_loss -->\n     <defs>\n      <path d=\"M 18.3125 70.21875 \nL 18.3125 54.6875 \nL 36.8125 54.6875 \nL 36.8125 47.703125 \nL 18.3125 47.703125 \nL 18.3125 18.015625 \nQ 18.3125 11.328125 20.140625 9.421875 \nQ 21.96875 7.515625 27.59375 7.515625 \nL 36.8125 7.515625 \nL 36.8125 0 \nL 27.59375 0 \nQ 17.1875 0 13.234375 3.875 \nQ 9.28125 7.765625 9.28125 18.015625 \nL 9.28125 47.703125 \nL 2.6875 47.703125 \nL 2.6875 54.6875 \nL 9.28125 54.6875 \nL 9.28125 70.21875 \nz\n\" id=\"DejaVuSans-116\"/>\n      <path d=\"M 50.984375 -16.609375 \nL 50.984375 -23.578125 \nL -0.984375 -23.578125 \nL -0.984375 -16.609375 \nz\n\" id=\"DejaVuSans-95\"/>\n     </defs>\n     <g transform=\"translate(321.990625 38.916562)scale(0.1 -0.1)\">\n      <use xlink:href=\"#DejaVuSans-116\"/>\n      <use x=\"39.208984\" xlink:href=\"#DejaVuSans-114\"/>\n      <use x=\"80.322266\" xlink:href=\"#DejaVuSans-97\"/>\n      <use x=\"141.601562\" xlink:href=\"#DejaVuSans-105\"/>\n      <use x=\"169.384766\" xlink:href=\"#DejaVuSans-110\"/>\n      <use x=\"232.763672\" xlink:href=\"#DejaVuSans-95\"/>\n      <use x=\"282.763672\" xlink:href=\"#DejaVuSans-108\"/>\n      <use x=\"310.546875\" xlink:href=\"#DejaVuSans-111\"/>\n      <use x=\"371.728516\" xlink:href=\"#DejaVuSans-115\"/>\n      <use x=\"423.828125\" xlink:href=\"#DejaVuSans-115\"/>\n     </g>\n    </g>\n   </g>\n  </g>\n </g>\n <defs>\n  <clipPath id=\"p01277d42f5\">\n   <rect height=\"217.44\" width=\"334.8\" x=\"43.78125\" y=\"22.318125\"/>\n  </clipPath>\n </defs>\n</svg>\n"
          },
          "metadata": {
            "tags": [],
            "needs_background": "light"
          }
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "ZPDuTkKcGh_I"
      },
      "source": [
        "# 模型使用\n",
        "\n",
        "此处我们使用模型预测疫情结束时间，即 新增确诊病例为0 的时间。\n",
        "\n"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "LP5EKCZIGmyl"
      },
      "source": [
        "# 使用 dfresult 记录现有数据以及此后预测的疫情数据\n",
        "dfresult = dfdiff[[\"confirmed_num\",\"cured_num\",\"dead_num\"]].copy()\n",
        "dfresult.tail()\n",
        "\n",
        "# 预测此后100天的新增走势,将其结果添加到dfresult中\n",
        "for i in range(100):\n",
        "    arr_predict = model.predict(tf.constant(tf.expand_dims(dfresult.values[-38:,:],axis = 0)))\n",
        "\n",
        "    dfpredict = pd.DataFrame(tf.cast(tf.floor(arr_predict),tf.float32).numpy(),\n",
        "                columns = dfresult.columns)\n",
        "    dfresult = dfresult.append(dfpredict,ignore_index=True)"
      ],
      "execution_count": 11,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "8eJnvoOlGsiC",
        "outputId": "53c34bf0-fc77-486f-a023-fd2de323248e",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 204
        }
      },
      "source": [
        "dfresult.query(\"confirmed_num==0\").head()\n",
        "\n",
        "# 第55天开始新增确诊降为0，第45天对应3月10日，也就是10天后，即预计3月20日新增确诊降为0\n",
        "# 注：该预测偏乐观"
      ],
      "execution_count": 12,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>confirmed_num</th>\n",
              "      <th>cured_num</th>\n",
              "      <th>dead_num</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>49</th>\n",
              "      <td>0.0</td>\n",
              "      <td>833.0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>50</th>\n",
              "      <td>0.0</td>\n",
              "      <td>740.0</td>\n",
              "      <td>0.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>51</th>\n",
              "      <td>0.0</td>\n",
              "      <td>654.0</td>\n",
              "      <td>0.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>52</th>\n",
              "      <td>0.0</td>\n",
              "      <td>577.0</td>\n",
              "      <td>0.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>53</th>\n",
              "      <td>0.0</td>\n",
              "      <td>515.0</td>\n",
              "      <td>0.0</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "    confirmed_num  cured_num  dead_num\n",
              "49            0.0      833.0       1.0\n",
              "50            0.0      740.0       0.0\n",
              "51            0.0      654.0       0.0\n",
              "52            0.0      577.0       0.0\n",
              "53            0.0      515.0       0.0"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 12
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "kadI8YVRGwu4"
      },
      "source": [
        "# 保存模型\n",
        "\n",
        "推荐使用 TensorFlow 原生方式保存模型。\n",
        "\n"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "WGXifW_NG0BV",
        "outputId": "9b3e06d0-2fe6-492b-d48e-5bbea7003d4a",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 697
        }
      },
      "source": [
        "model.save('./tf_model_savedmodel', save_format=\"tf\")\n",
        "print('export saved model.')\n",
        "\n",
        "model_loaded = tf.keras.models.load_model('./tf_model_savedmodel',compile=False)\n",
        "optimizer = tf.keras.optimizers.Adam(learning_rate=0.001)\n",
        "model_loaded.compile(optimizer=optimizer,loss=MSPE(name = \"MSPE\"))\n",
        "model_loaded.predict(ds_train)"
      ],
      "execution_count": 14,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "INFO:tensorflow:Assets written to: ./tf_model_savedmodel/assets\n",
            "export saved model.\n"
          ],
          "name": "stdout"
        },
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "array([[1861.9282  ,   97.88871 ,   34.38245 ],\n",
              "       [2296.5852  ,   76.75365 ,   69.91098 ],\n",
              "       [2505.9302  ,  163.51863 ,   65.32665 ],\n",
              "       [2867.8486  ,  174.64235 ,   73.34923 ],\n",
              "       [3447.0955  ,  289.21664 ,   74.49531 ],\n",
              "       [3276.7808  ,  290.329   ,   83.66396 ],\n",
              "       [2788.0137  ,  430.48785 ,   83.66396 ],\n",
              "       [3002.681   ,  567.3096  ,   98.56303 ],\n",
              "       [2352.4697  ,  666.3106  ,  102.00127 ],\n",
              "       [2637.2144  ,  703.0189  ,  111.16992 ],\n",
              "       [2026.6033  ,  771.8911  ,  111.50191 ],\n",
              "       [1296.1781  ,  745.72095 ,   69.19297 ],\n",
              "       [4415.5317  ,  994.5283  ,    0.      ],\n",
              "       [2239.4614  ,  779.0968  ,    0.      ],\n",
              "       [2508.8147  , 1549.2253  ,   91.15738 ],\n",
              "       [1984.9015  , 1517.395   ,  134.54181 ],\n",
              "       [2024.7202  , 1636.7169  ,  119.7118  ],\n",
              "       [1860.368   , 1961.6815  ,  124.19464 ],\n",
              "       [ 731.8928  , 1649.6821  ,   90.49049 ],\n",
              "       [ 299.8297  , 1891.1019  ,  133.80064 ],\n",
              "       [ 486.15726 , 2035.4076  ,  101.290436],\n",
              "       [ 380.80966 , 2213.7368  ,   77.61099 ],\n",
              "       [ 299.85516 , 2060.3333  ,   69.07364 ],\n",
              "       [  99.08311 , 1706.5575  ,  106.91568 ],\n",
              "       [ 236.06465 , 2395.682   ,   50.959255],\n",
              "       [ 190.82251 , 2248.7903  ,   38.686707],\n",
              "       [ 213.212   , 2588.6868  ,   24.754765],\n",
              "       [ 161.01692 , 3409.5356  ,   37.558952],\n",
              "       [ 210.25757 , 2715.7678  ,   40.11979 ],\n",
              "       [ 282.14893 , 2469.1365  ,   29.876438],\n",
              "       [  99.46611 , 2670.5833  ,   35.851727],\n",
              "       [  61.55081 , 2581.156   ,   26.461988],\n",
              "       [  58.59637 , 2496.4353  ,   32.437275],\n",
              "       [  68.4445  , 2060.5947  ,   26.461988],\n",
              "       [  70.41413 , 1582.3936  ,   25.608376],\n",
              "       [  48.74824 , 1579.5696  ,   23.901152],\n",
              "       [  21.665886, 1563.5668  ,   23.047533],\n",
              "       [  19.696259, 1444.9579  ,   18.779472]], dtype=float32)"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 14
        }
      ]
    }
  ]
}